Appium + Selenium - 弹出窗口关闭后无法在本机应用上找到元素

时间:2018-02-01 11:05:35

标签: java selenium selenium-webdriver appium

我正在使用Appium + Selenium + Java测试本机应用程序。

场景是有一个弹出窗口在屏幕上打开。弹出窗口关闭后,我无法导航回打开弹出窗口的屏幕。

司机无法找到它。

到目前为止我试过这个......

从PopupOk调用返回Page对象 (?1_)(?2ae)... - 此内容中的所有内容,driver.switchto() defaultContent() 但没有任何作用。

对此的任何帮助都非常感谢。

2 个答案:

答案 0 :(得分:1)

为我工作:(( Appium 1.10,Android 8.1 ))

2个选项:

第一个解决方案:

driver.runAppInBackground(Duration.ofMillis(300));

关闭弹出窗口后,使用此行,您的应用将进入后台运行,然后又将焦点移回您的应用。

第二种解决方案:更好的一种:)

将此行添加到设置:

capability.setCapability("noReset", true);

从现在开始,您的应用程序将像普通应用程序一样启动,而无需设置重设,这意味着没有弹出窗口,而且您完全不会关注焦点。

我希望它也对您有用! :)

答案 1 :(得分:0)

您可以尝试通过将应用程序发送到后台0秒钟来重新启动应用程序吗?

在弹出窗口关闭后尝试此操作:

driver.runAppInBackground(0);

如果有效,您必须能够正常恢复测试