接收来自渲染器的消息超时:600.000 with Chrome v73.0, ChromeDriver 2.46 on Bamboo Server

Posted

技术标签:

【中文标题】接收来自渲染器的消息超时:600.000 with Chrome v73.0, ChromeDriver 2.46 on Bamboo Server【英文标题】:Timed out receiving message from renderer: 600.000 with Chrome v73.0, ChromeDriver 2.46 on Bamboo Server 【发布时间】:2019-04-01 11:46:57 【问题描述】:

chrome 浏览器升级到 73.0 后硒测试没有在竹构建服务器中执行,并且在本地执行时工作正常。 chromeDriver 2.46 升级兼容版本。仍然出现错误:

Please protect ports used by ChromeDriver and related test frameworks to prevent access by malicious code.
[1554111197.266][WARNING]: Timed out connecting to Chrome, retrying...
Apr 01, 2019 5:33:18 PM org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: OSS

为当前计划启用了强制停止构建功能。 Bamboo 检测到构建已挂起或已手动停止。

以下是用于启动浏览器的代码:

public void selectBrowser(String browser)

    System.out.println(System.getProperty("os.name"));
    if (System.getProperty("os.name").contains("Window")) 
      if (browser.equals("chrome")) 
        System.out.println(System.getProperty("user.dir"));
        System.setProperty("webdriver.chrome.driver", 
        System.getProperty("user.dir") + "/drivers/chromedriver.exe");
        ChromeOptions chromeOptions = new ChromeOptions();
        chromeOptions.addArguments("--verbose");
        chromeOptions.addArguments("--whitelisted-ips=");
        chromeOptions.setPageLoadStrategy(PageLoadStrategy.NONE);
        driver = new ChromeDriver(ChromeOptions);
       
    

测试执行期间竹子中显示的错误:

【问题讨论】:

你试过添加`chromeOptions.addArguments("--disable-gpu");`? @supputuri - 在第二次执行后第一次工作得到错误“[1554187619.136][SEVERE]:从渲染器接收消息超时:600.000” 您为什么不尝试使用 ChromeDriver 73.0.3683.68,因为他们在该版本中修复了 Increased HTTP server listening queue length 【参考方案1】:

Long Story cut Short John Chen(所有者 - chromedriver)已确认:

根本原因确实在 Chrome 73.x 中,而不是在 ChromeDriver 中。我们正在与 Chrome 开发人员合作寻找解决方案。


解决方案

快速解决方案是:

Chrome 浏览器 降级到 Chrome v72.x 使用匹配的ChromeDriver: ChromeDriver 2.46 ChromeDriver 72.0.3626.69

注意:如果您使用的是 Chrome 版本 72,请下载 ChromeDriver 2.46 或 ChromeDriver 72.0.3626.69

确保将 JDK 升级到最新级别的JDK 8u202。

另类

通过ChromeOptions() 的实例添加参数--disable-features=VizDisplayCompositor 似乎可以解决问题:

ChromeOptions options = new ChromeOptions();
options.addArguments("--disable-features=VizDisplayCompositor");
WebDriver driver = new ChromeDriver(options);
driver.get("https://google.com");

结尾

您可以在以下位置找到相关讨论:

Page.captureScreenshot no longer works in Chrome 73 under Selenium as a Service on Windows Error [SEVERE]: Timed out receiving message from renderer: 20.000 while executing the testsuite through Selenium on Jenkins Download Google Chrome 72 Offline Installer For All Operating Systems

【讨论】:

以上是关于接收来自渲染器的消息超时:600.000 with Chrome v73.0, ChromeDriver 2.46 on Bamboo Server的主要内容,如果未能解决你的问题,请参考以下文章

从渲染器接收消息超时:0.100 条日志消息使用 ChromeDriver 和 Chrome v80 通过 Selenium Java

错误 [严重]:从渲染器接收消息超时:20.000 在 Jenkins 上通过 Selenium 执行测试套件时

preload.ts 中的 contextBridge.exposeInMainWorld:ipcRenderer 接收到来自 main.ts 的消息但渲染器没有得到它

Amazon SQS 可见性超时

dbus_connection_send_with_reply 超时

来自 xaml 的自定义渲染器的 Xamarin 访问属性