如何使用机器人框架接受警报

时间:2014-10-23 04:18:44

标签: python python-2.7 selenium-webdriver robotframework

使用selenium2library通过机器人框架自动化我的Web应用程序。 我无法使用现有关键字接受浏览器提醒。

尝试接受警报时获取以下异常。

UnexpectedAlertPresentException: Alert Text: Delete selected trusted provider(s)?
<super: <class 'WebDriverException'>, <UnexpectedAlertPresentException object>>

已尝试过以下selenium2library关键字Alert Should Be PresentGet Alert MessageConfirm Action等。

请指导我如何继续。

2 个答案:

答案 0 :(得分:6)

最后,我找到了一种在Robot Framework中处理警报的方法。

我们只需要使用&#34;选择Ok On Next Confirmation&#34;用&#34;确认行动&#34;关键字。

如果我想接受使用selenium删除资源的警报提示是或否,您可以使用以下代码。

Choose Ok On Next Confirmation      
Click Element   //a[contains(.,'Delete')]
Confirm Action  

这将接受警报。如果您想要解除或拒绝提醒,您只需使用关键字Alert Be Be Present即可自动关闭提醒。

答案 1 :(得分:2)

从Selenium2Library 3.0开始,您可以将Handle Alert关键字用于以下操作:

  • 接受:接受警报,即按确定。默认。
  • DISMISS:关闭 提醒,即按“取消”。
  • 离开:让警报保持打开状态。

还有一个可选的第二个参数,您可以用来提供超时。也可以将警报中的文本存储在变量中。

Handle Alert Keyword - Selenium2Library Docs http://robotframework.org/Selenium2Library/Selenium2Library.html#Handle%20Alert