2017-05-04 96 views
0

我在Cucumber自动化框架中使用Ruby来自动执行我的Android和iOS应用程序。我使用的是Appium 1.6.4 beta,因为它支持iOS 10.2。当使用Appium自动化应用程序时自动关闭iOS警报

当Appium服务器首次在设备上安装iOS应用程序时,系统会提示您提示是否要允许通知。就我所知,使用Appium时,“autoAcceptAlerts”功能目前不起作用。

我的主要问题是如何检查警报对话框是否存在,然后使用类似find_element的内容按下“允许”按钮,但不必编辑我的功能文件。有没有一种方法可以使用我的“以现有用户身份登录”步骤来检查警报,并在它存在的情况下将其解除,如果不是继续使用登录流程?

我试着用find_element(xpath来确定按钮).exists?做一个if/else的陈述,但我认为我只是做错了。如果警报不存在,则该步骤失败,我的测试运行停止。

对不起,如果这个问题在她的某个地方回答,但我一直无法自己找到这个问题的好答案。感谢您提供任何帮助。

回答

0

根据来自Appium团队的文档,它看起来好像自动接受所有对话的所需功能被破坏了。因此,我对行为进行了硬编码,而不是依靠appium。也许这将在下一个版本中得到解决。

0

您可以使用@ driver.switch_to.alert.accept接受或@ driver.switch_to.alert.dismiss关闭警报。 如果您不确定警报,请使用开始/救援处理异常

相关问题