使用appium for android原生应用程序尝试了登录用例。但是按钮点击不起作用。但我也得到了移动驱动的所有测试passed.Tried。
@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("Pass@123");
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();
}
发布于 2016-10-07 18:41:31
我也有同样的问题。
请确保您的提交按钮(UI)未被电话键盘覆盖。
如果覆盖,则解决方案:在运行单击.click()函数之前隐藏键盘。
键盘隐藏代码在这里How to dismiss the keyboard in appium using Java?
原因:因为Appium使用x&y坐标单击按钮,如果键盘覆盖了submit按钮,则单击的是键盘而不是按钮。
发布于 2019-09-20 13:57:32
就像你的键盘隐藏了Login按钮一样,所以通过,
driver.hidekeyboard();
https://stackoverflow.com/questions/38239351
复制相似问题