未处理多个异常



目前我在 for 循环中使用多个异常。但是,它们仍然抛出异常错误,我不确定为什么它们没有被处理。

这是我的代码:

for x in range (15):
actions.click_and_hold(element1).move_to_element(element2).release().perform()
try:
WebDriverWait(driver, 5).until(
EC.visibility_of_element_located((elementLocator))
)
return True
except (StaleElementReferenceException, TimeoutException):
break

这是抛出的错误:

StaleElementReferenceException: Message: stale element reference: element is not attached to the page document
(Session info: headless chrome=67.0.3396.30)
(Driver info: chromedriver=2.36.540469 (1881fd7f8641508feb5166b7cae561d87723cfa8),platform=Mac OS X 10.13.4 x86_64)

我在您的代码块中没有看到任何问题,但您的主要问题似乎在于您使用的二进制文件之间的版本兼容性,如下所示:

  • 您正在使用的 chromedriver=2.36
  • chromedriver=2.36的发行说明明确提到了以下内容:

支持铬 v63-65

  • 您正在使用的 chrome=67.0
  • ChromeDriver v2.38的发行说明明确提到了以下内容:

支持铬 v65-67

因此,ChromeDriver版本(v2.36)和Chrome浏览器版本(v67.0)之间存在明显的不匹配。

溶液

  • ChromeDriver升级到当前的ChromeDriver v2.38级别。
  • Chrome 版本保持在Chrome v67.x级别。(根据ChromeDriver v2.38发行说明)
  • 通过IDE清理项目工作中心,并仅使用所需的依赖项重新生成项目。
  • 使用CCleaner工具在执行测试套件之前和之后清除所有操作系统杂务。
  • 如果您的基本 Web 客户端版本太旧,请通过Revo 卸载程序将其卸载,并安装最新的 GA 和已发布版本的Web 客户端
  • 重新启动系统
  • 执行您的@Test

相关内容

  • 没有找到相关文章

最新更新