相关疑难解决方法(0)

使用selenium和python检查是否存在任何警报

我正在尝试使用python语言的selenium编写一个用于管理用户的网页的测试.在此页面中,有人可以为用户添加角色,如果在添加角色时存在角色,则会发出警报.我不知道警报是javascript警报还是网页的元素.我想自动检查是否存在警报,因为检查列表中的角色会浪费时间并且负载很大.我试过这个:

browser = webdriver.Firefox()
browser.get("url")
browser.find_the_element_by_id("add_button").click()
try:
    alert = browser.switch_to_alert()
    alert.accept()
    print "alert accepted"
except:
    print "no alert"
Run Code Online (Sandbox Code Playgroud)

但它没有用,我得到了"UnexpectedAlertPresentException".我也试过这个:

browser = webdriver.Firefox()
browser.get("url")
browser.find_the_element_by_id("add_button").click()
s = set(browser.window_handles)
s.remove(browser.current_window_handle)
browser.switch_to_window(s.pop()) 
Run Code Online (Sandbox Code Playgroud)

但我得到了同样的例外.此外,我尝试使用firebug访问警报以检查我是否可以访问其属性,但右键单击已禁用.即使在其他语言中,我也需要非常快速的解决方案.无论如何我能理解这种方法.我将不胜感激任何帮助.

python testing selenium alert window-handles

53
推荐指数
2
解决办法
7万
查看次数

标签 统计

alert ×1

python ×1

selenium ×1

testing ×1

window-handles ×1