1

设想:

  1. 在文本框中输入关键字(位置)
  2. 按 T​​ab 或单击下一个元素
  3. 出现一个弹出窗口
  4. 将列出符合条件的职位列表
  5. 单击所需的记录
  6. 弹出窗口自动关闭
  7. 将显示警报
  8. 单击警报的确定按钮。
  9. 切换到主窗口并查看职位详情

问题:-我在网站上找到了许多解决方案,但都是关于在窗口弹出窗口上执行操作并关闭弹出窗口然后切换到警报或主浏览器

但是我的应用程序在选择后会自动关闭弹出窗口,因此我不能使用 driver.close() 或 driver.switchto.defaultContent()。

如果我不关闭驱动程序(用于弹出),我无法识别弹出后显示的下一个警报。

如果我直接切换到 mainwindhandle,则会发生警报解除而不是接受。

请任何知道如何在没有弹出关闭帮助的情况下从窗口弹出切换到警报的人...

谢谢 ....

4

2 回答 2

0

一定对你有帮助。根据您的问题,即使您的弹出窗口自动关闭,您也必须能够通过切换回父窗口元素来访问它。一直都不需要 driver.close() 。这是代码,

// do something with the pop up and it closes automatically here.
driver.switchTo().defaultContent();
driver.switchTo().frame("your parent window mainframe"));
// try to access your parent window element here 
于 2013-07-18T15:11:50.273 回答
0
  1. 如果在您尝试接受它时发生警报解除,为什么不使用alert.dismiss(),它可能会在您的上下文中接受警报。

  2. 当您切换到弹出窗口时,驱动程序焦点在弹出窗口上。您可能想要做的是,在单击所需记录后,切换到主窗口然后接受警报。

于 2013-07-20T04:06:41.237 回答