0

UI 自动化查看器

每当我使用以下命令单击Ok按钮时,它会单击与指向相同的位置UI Automator viewer。(截屏)

我需要点击Ok按钮。

Driver.findElement(By.xpath("//android.widget.Button[@text='Ok']")).click();
4

4 回答 4

1

首先,既然你有resource-id,最可靠的就是用它来搜索:

driver.findElementById("confirm_button").click()

如果它仍然单击错误的元素,您可能需要稍等片刻(以加载弹出窗口),然后执行单击

于 2017-11-27T17:24:24.143 回答
1

你能试一下吗 :

Driver.findElement(By.xpath("//*[@class='android.widget.Button and @text='Ok']")).click();
于 2017-11-27T19:02:33.387 回答
0

您是否尝试过按坐标单击?

(Python代码)

myElement = driver.find_element_by_id('confirm_button')
x = myElement.location['x']
y = myElement.location['y']
touchAction.tap(None, x, y, 1).perform()

当同时显示多个图层时,我遇到了同样的问题......希望它有所帮助

更新

(Java代码)

WebElement myElement = driver.findElementById("confirm_button");
int x = myElement.getPosition().getX();
int y = myElement.getPosition().getY();
touchAction.tap(x, y).perform();
于 2017-11-28T09:23:38.837 回答
0

问题是当我尝试在注册页面上输入数据时,键盘会打开,并且由于 UI Automator 屏幕截图给出了错误的按钮位置。所以我所做的是在点击注册按钮之前使用下面的命令来隐藏键盘。

Driver.navigate().back();
delay(3000);
Driver.findElement(By.id("btn_register_signup")).click();
于 2017-12-04T06:20:54.793 回答