【问题标题】:Getting an error org.openqa.selenium.WebDriverException disconnected: received Inspector.detached event with Selenium ChromeDriver and Chrome收到错误 org.openqa.selenium.WebDriverException 已断开连接:使用 Selenium ChromeDriver 和 Chrome 收到 Inspector.detached 事件
【发布时间】:2019-12-28 04:59:15
【问题描述】:

我正在尝试使用 selenium 和 Java 运行我的自动化脚本,但遇到以下错误:

WebDriverException: Message: disconnected: received Inspector.detached event
    (Session info: chrome=76.0.3809.100)         
    (Driver info: chromedriver=76.0.3809.126 (d80a294506b4c9d18015e755cee48f953ddc3f2f-refs/branch-heads/3809@{#1024})

谁能解释一下这个错误?

【问题讨论】:

  • 您认为帖子中提供的信息足以理解和重现问题吗?欢迎来到 SO,请阅读 minimal reproducible example 并相应地编辑您的帖子,谢谢

标签: java selenium google-chrome selenium-chromedriver web-inspector


【解决方案1】:

此错误消息...

WebDriverException: Message: disconnected: received Inspector.detached event

...暗示 ChromeDriver 在测试执行In Progress时自动断开连接。

DevTools window keeps closing 文章中明确提到,如果您在 ChromeDriver 忙于执行自动测试时尝试打开 DevTools 窗口>,ChromeDriver 会自动断开连接,当 ChromeDriver 收到处于断开连接状态的命令时,它会尝试关闭 DevTools 窗口并重新连接。早期的 Chrome 的 DevTools 只允许每页一个调试器。但是从 ChromeDriver v2.x 开始,它现在是一个 DevTools 调试客户端。

如果您的用例是通过 DevTools 检查DOM Tree,最好的方法是暂停您的测试执行,这样 ChromeDriver 就不会关闭 DevTools .当您通过 Chrome 完成对HTML DOM 的检查后,您可以取消暂停测试,ChromeDriver 将关闭窗口并继续。

根据unknown error: cannot determine loading status from disconnected: received Inspector.detached 中的讨论,将 ChromeDriver 放在路径中可以解决问题。所以你需要:

driver = webdriver.Chrome(executable_path='/path/to/chromedriver')
driver.get("https://google.com")

【讨论】:

  • 我的 Chrome 驱动程序路径如下: File file = new File("/pathchromedriver"); System.setProperty("webdriver.chrome.driver", file.getAbsolutePath());
  • 我在第 2 次运行正确执行后的第 2 次运行时遇到此错误,所以仍然不知道是什么问题。
  • @KASHIFAHASAN 你的问题是解释我做的规范问题:)
  • 谢谢你,但你知道如何解决这个问题。
猜你喜欢
  • 2021-08-18
  • 1970-01-01
  • 2019-12-15
  • 2016-07-17
  • 2020-04-09
  • 1970-01-01
  • 2016-01-15
  • 2015-11-13
相关资源
最近更新 更多