2017-11-22 5 views
0

私はAppiumを使ってAndroid Appを自動化しています。Appiumの許可警告の許可ボタンをタップした後、リンクをタップできませんか?

:私は同じのためのコードの下に試してみた

enter image description here

:私が直面してる問題は、下の画像のようにお問い合わせアクセス許可のボタンを許可し、それは上のタブ移動した後、任意のアクションを実行しないで

@Test 
public void doLogin() 
{ 

    driver.findElement(By.id("com.rawalinfocom.rcontact:id/text_next")).click(); 
    // Clicks on Allow Button 
    driver.findElement(By.id("com.android.packageinstaller:id/permission_allow_button")).click(); 
    // Clicks on Skip link 
    driver.findElement(By.id("com.rawalinfocom.rcontact:id/text_skip")).click(); 
    driver.findElement(By.id("com.rawalinfocom.rcontact:id/checkbox_terms_conditions")).click(); 
    driver.findElement(By.id("com.rawalinfocom.rcontact:id/button_get_started")).click(); 
    driver.findElement(By.id("com.rawalinfocom.rcontact:id/input_number")).sendKeys("9422307801"); 
    driver.findElement(By.id("com.rawalinfocom.rcontact:id/button_submit")).click(); 
    driver.findElement(By.id("com.rawalinfocom.rcontact:id/input_enter_password")).sendKeys("1234"); 
    driver.findElement(By.id("com.rawalinfocom.rcontact:id/button_login")).click(); 
    System.out.print("Login Success"); 
} 

私はAppiumの初心者です。行方不明のものはどうやって見つけられますか?

答えて

0

私は能力の下に設定することで、ポップアップを処理することができるよ。この場合

capabilities.setCapability("autoGrantPermissions", "true"); 
capabilities.setCapability("autoAcceptAlerts", "true"); 

それがポップアップを常に許可権限セットを表示しません。

0

このようなポップアップでは、ドライバのフォーカスがそのポップアップに切り替えられ、クリック後に返されることはありません。このような場合は、そのポップをクリックした直後に「driver.getPageSource()ドライバのフォーカスを返すために動作しない場合は、ドライバのフォーカスをアプリに返すランダムな場所でタップすることができます

ランダムな位置でタップするために、 (0,0)または(width/2,10)のように。

似たような状況でタップしてみましたが、うまくいきました。

+0

それは動作しません。まだ同じ問題 – NarendraR

0

Clickメソッドの代わりにTouchActionクラスをタップしてみてください。 は、例えば:

MobileElement skip = driver.findElement(By.id("com.rawalinfocom.rcontact:id/text_skip")); 
TouchAction touch = new TouchAction (driver); 
touch.tap (skip).perform(); 

また、私は、次に示すように、あなたがAndroidDriverとしてドライバを使用していると仮定しています:

AndroidDriver <MobileElement> driver = new AndroidDriver (new URL ("http://<appium IP>:<Port>/wd/hub"), capabilities); 

それはあまりにも私のために働いているとうまくいけば、これは動作するはずです。

+0

ありがとう@ wasiqが、私の動作しないフォーム私。 – NarendraR

+0

これは、古いバージョンのAppiumを使用している可能性があり、Javaバインディングであると思われます。 1.7.1 AppiumとのJavaバインディングの最新バージョン5.0.4で試してみることができますか教えてください。 –

+0

私はあなたが言及したバージョンを持っています。残念ながらそれは私にとってはうまくいかないようです。私は代替案を見つけてすでに投稿しています。ありがとう – NarendraR

関連する問題