Appium iOS Safari打开新选项卡,接受警报并在两个选项卡之间切换

时间:2017-12-18 11:41:41

标签: ios safari tabs appium alert

所以我正在测试一个Web应用程序,我必须打开一个新的选项卡,切换到它,做一些输入,而不是切换回第一个选项卡,这不止一次。 我尝试以这种方式打开新标签:

((JavascriptExecutor) AppiumTestBase.getDriver()).executeScript("window.open('http://google.com', '_blank')");

这会导致出现以下警告:

iOS pop-up

但是我无法通过Appium的自动化接受它。我尝试过的事情:

  • 使用以下功能:" safariAllowPopups"和" autoAcceptAlerts"
  • 在iOS sim中更改safari的相应设置
  • .switchTo()警报()接受();我也在等Popup。
  • 在接受弹出窗口之前切换到本机上下文
  • 按名称单击弹出.findElement(By.name("允许"))。click();

我没有尝试过:

  • 根据弹出坐标点击屏幕。我没有尝试这个,因为我不确定如何获得"允许"按钮。

我的另一个问题是如何在两个标签之间切换?我还没有尝试过任何东西,但研究表明我会尝试使用窗口上下文。

其他一些信息:

  • 目前正在使用iPhoneSE iOS 9.3模拟器进行测试,该解决方案应该适用于多种配置
  • Appium是最新版本
  • Class" AppiumTestBase"唯一目的是设置功能并初始化AppiumDriver

2 个答案:

答案 0 :(得分:1)

请在我更改为不再出自safari的弹出窗口后尝试此上限

{{1}}

答案 1 :(得分:0)

我尝试了Atthaboon Sanurt建议的解决方案,但它没有帮助。 没有警报,但新的窗口/标签也没有打开。

此处报告问题: https://github.com/appium/appium/issues/6864

到目前为止,似乎没有解决方案,并计划修复它。