Timed out receiving message from renderer

2020-04-10 03:19发布

问题:

I am trying to get status of transactions from some web portal and I am using below chrome settings in my java application and I am getting

Timed out receiving message from renderer: 60.000

and all the pending transactions are timing out.

Session info: headless chrome=68.0.3440.75
Driver info: chromedriver=2.38 (0)
platform=Linux 2.6.32-696.23.1.el6.x86_64 x86_64)

How i can handle this and if any timeout is happening then move to next transaction?

I have tried all permutation and combinations with below statements but still its not working;

options.addArguments("headless");
options.addArguments("disable-gpu");
WebDriver driver = new ChromeDriver(caps);
TimeUnit.SECONDS.sleep(1);
driver.manage().timeouts().pageLoadTimeout(20, TimeUnit.SECONDS);
driver.manage().timeouts().implicitlyWait(20,TimeUnit.SECONDS);

回答1:

This error message...

Timed out receiving message from renderer: 60.000

...implies that the ChromeDriver was unable to initiate/spawn a new WebBrowser i.e. Chrome Browser session.

Your main issue is the incompatibility between the version of the binaries you are using as follows:

  • You are using chromedriver=2.38
  • Release Notes of chromedriver=2.38 clearly mentions the following :

Supports Chrome v65-67

  • You are using chrome=68.0
  • Release Notes of ChromeDriver v2.41 clearly mentions the following :

Supports Chrome v67-69

  • Your Selenium Client version is unknown to us.
  • Your JDK version is version is unknown to us.

So there is a clear mismatch between the ChromeDriver v2.38 and the Chrome Browser v68.0

Solution

  • Upgrade JDK to recent levels JDK 8u181.
  • Upgrade Selenium to current levels Version 3.14.0.
  • Upgrade ChromeDriver to current ChromeDriver v2.41 level.
  • Keep Chrome version between Chrome v67-69 levels. (as per ChromeDriver v2.41 release notes)
  • Clean your Project Workspace through your IDE and Rebuild your project with required dependencies only.
  • Execute your @Test.