我们正在使用以下内容执行自动化脚本:
导航到特定页面时,我们正在执行以下代码:
browser = context.browser
selector_button_checkout = "//*[@id='cart']//div[contains(@class, 'button button-3 localizejs') and text()='CHECKOUT']"
with browser.get_iframe(0) as iframe:
assert iframe.is_element_present_by_xpath(selector_button_checkout, wait_time=30)
我们收到此错误:
packages/selenium/webdriver/remote/errorhandler.py", line 237, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.UnexpectedAlertPresentException: Alert Text: None
Message:
Exception UnexpectedAlertPresentException: Alert Text: None
Message:
Traceback (most recent call last):
selenium.common.exceptions.UnexpectedAlertPresentException: Alert Text: None
Message:
实际上,网络上没有显示警报或提示,但无论如何我们尝试使用此处http://splinter.readthedocs.io/en/latest/iframes-and-alerts.html
中的Splinter文档来处理它我们得到另一个例外NoAlertPresentException
,所以我们迷路了。
有什么想法吗?
答案 0 :(得分:0)
这可能会有所帮助:How to handle an Alert with "UnexpectedAlertBehaviour" capability in Selenium?
对于我们来说,我们使用FacebookWebDriver进行了Codeception,有时当您尝试单击或访问不存在或不可见的成员时,它会因上述错误而失败。
然后转到问题页面并检查该元素(css或xpath)是否可见,可点击等。您可以使用浏览器控制台,$()用于查询路径,$ x()用于xpath。