2016-07-07 7 views
0

アンドロイドネイティブアプリのappiumでのログインユースケースを試してみました。しかし、ボタンがクリックされていない。しかし、私はすべてのテストが合格になっています。モバイルドライバもあります。Appium Androidボタンがクリックされていませんか?

 @BeforeClass 
     public static void setUp() throws MalformedURLException 
     { 
      DesiredCapabilities capabilities=new DesiredCapabilities(); 
     capabilities.setCapability("BROWSER_NAME","Chrome"); 
      capabilities.setCapability("VERSION","4.3"); 
      capabilities.setCapability("deviceName","SGH-T999L"); 
      capabilities.setCapability("platformName","Android"); 
      capabilities.setCapability("appPackage","org.odk.collect.android"); 
      capabilities.setCapability("appActivity","com.fieldforce.android.activities.LoginActivity"); 
      webDriver=new RemoteWebDriver(new URL("http://127.0.0.1:4723/wd/hub"),capabilities); 

    //  webDriver.manage().timeouts().implicitlyWait(80, TimeUnit.SECONDS); 
     } 
     @Test 
     public void testLogin() throws Exception 
     { 
    //  webDriver.switchTo().window("NATIVE_APP"); 
      WebDriverWait wait = new WebDriverWait(webDriver, 10); 
      WebElement userName= webDriver.findElement(By.id("txt_username")); 
      userName.sendKeys("733894"); 
      WebElement password= webDriver.findElement(By.id("txt_password")); 
      password.sendKeys("[email protected]"); 

      WebElement login_button= webDriver.findElement(By.id("org.odk.collect.android:id/btn_login")); 

      wait.until(ExpectedConditions.visibilityOf(login_button)); 
      login_button.click(); 



     } 

@AfterClass 
    public static void tearDown() 
    { 
     webDriver.quit(); 
    } 
+0

どのようにクリックがうまくいかないのですか?どんなポップアップやエラーでも確認する必要がありますか? – nullpointer

+0

私はクリックでサーバーを叩いています。応答が得られません –

+0

デバイスログ/エミュレータのアプリで、サーバーログを共有してください。 – nullpointer

答えて

0

はまた、私はそれが当てはまらない場合は、一般的なログインページが理想的には、ログインが見えたされなければならないと考えている

WebElement login_button= webDriver.findElement(By.id("btn_login")); //as used for other WebElement 

を使用することをお勧めし、ページのスクロールを下に実行したい場合があります代わりの

wait.until(ExpectedConditions.visibilityOf(login_button)); 

PS - あなたが任意のエラー/例外ポストを受信して​​いる場合この。質問に追加してお知らせください。

+0

エラーまたは例外は発生しませんが、クリック機能は機能しません。 –

0

もちろん、ログインボタンをクリックしようとしているので、ログインボタンをクリックしてからAssertを追加しない限り、テストケースが合格するか失敗するかは関係ありません。

、ログイン

driver.manage().timeouts().implicitlyWait(15, TimeUnit.SECONDS); 

をクリックした後、いくつかのウェイトを追加してみてくださいそして、最後に2文の下に追加して、ログイン後、あなたが得るロケータとに適合させるTESTLOGINが好きな方法ため@testで何かを主張してみてください

Actualtext = driver.findElement(By.xpath("locator to verify after login")).getText(); 
Assert.assertEquals(Actualtext, "assert Text"); 
0

私は同じ問題があります。

送信ボタン(UI)が電話キーボードの対象外であることを確認してください。

解決方法: クリック[.click()]機能を実行する前にキーボードを非表示にします。 だってAppiumは、x &のY UI座標を使用してボタンをクリックし、キーボードはそれがキーボード上にないボタンをクリックする送信ボタンを覆っている場合:。

キーボードを隠すコードは、ここでHow to dismiss the keyboard in appium using Java?

理由であります

+1

ありがとうございました。 –

関連する問題