Zeitüberschreitung beim Empfang der Nachricht vom Renderer: 10.000
Beim Ausführen meiner Szenarien wird der folgende Fehler angezeigt.
org.openqa.selenium.TimeoutException: timeout: Zeitüberschreitung beim Empfang der Nachricht vom Renderer: 10.000
(Sitzungsinfo: chrome = 79.0.3945.79) Build-Info: Version: '3.14.0', Revision: 'aacccce0', Zeit: '2018-08-02T20: 19: 58.91Z' Systeminfo: Host: 'fv-az598 ', ip: '10 .1.0.4', os.name: 'Linux', os.arch: 'amd64', os.version: '4.15.0-1064-azure', java.version: '1.8.0_212' Treiber info: org.openqa.selenium.remote.RemoteWebDriver Capabilities {acceptInsecureCerts: false, browserName: chrome , browserVersion: 79.0.3945.79 , chrome : { chromedriverVersion: 79.0.3945.36
Wie Sie sehen können, habe ich mit fett hervorgehobener Schrift übereinstimmende Versionen von Chrome und Chrome-Treiber.
Ich übergebe meinen ChromeOptions auch einige Argumente, die Hilfe bei Zeitüberschreitungen bedeuteten:
// options to prevent TIMEOUTS
options.addArguments("start-maximized"); //https://stackoverflow.com/a/26283818/1689770
options.addArguments("enable-automation"); //https://stackoverflow.com/a/43840128/1689770
options.addArguments("--no-sandbox"); //https://stackoverflow.com/a/50725918/1689770
options.addArguments("--disable-infobars"); //https://stackoverflow.com/a/43840128/1689770
options.addArguments("--disable-dev-shm-usage"); //https://stackoverflow.com/a/50725918/1689770
options.addArguments("--disable-browser-side-navigation"); //https://stackoverflow.com/a/49123152/1689770
options.addArguments("--disable-gpu"); //https://stackoverflow.com/questions/51959986/how-to-solve-selenium-chromedriver-timed-out-receiving-message-from-renderer-exc
options.addArguments("--disable-features=VizDisplayCompositor"); //https://stackoverflow.com/questions/55373625/getting-timed-out-receiving-message-from-renderer-600-000-when-we-execute-selen
Bearbeiten: Dies geschieht beim Ausführen im DOCKER-Container (unter Verwendung der neuesten Docker-Images für den Chrome-Browser und des Node-Chrome-Debugs).
Alle Ideen werden sehr geschätzt.
Antworten
Diese Fehlermeldung ...
org.openqa.selenium.TimeoutException: timeout: Timed out receiving message from renderer: 10.000
... bedeutet , dass die ChromeDriver nicht in der Lage war , eine neue zu initiieren / laichen Browsing Context dh Chrome Browser - Sitzung.
Ihr Hauptproblem ist die Inkompatibilität zwischen der Version der Binärdateien, die Sie wie folgt verwenden:
- Ihre Selen - Client - Version ist 3.14.0 von 2018-08-02T20: 19: 58.91Z die fast ist 1,5 Jahre älter unddas gleichzeitige ChromeDriver war OSS - konform.
- Sie verwenden chromedriver = 79.0
- Sie verwenden Chrome = 79.0
- Obwohl chromedriver = 79,0 und Chrom = 79,0 gleichzeitige, aber sie sind nicht kompatibel mit Selen - Client - Version ist 3.14.0 .
Es besteht also eine eindeutige Nichtübereinstimmung zwischen Selenium Client v3.14.0 , ChromeDriver v79.0 und dem Chrome Browser v79.0
Lösung
Sicher gehen, dass:
- JDK wird auf das aktuelle Niveau JDK 8u222 aktualisiert .
- Selen wird auf die aktuelle Version 3.141.59 aktualisiert .
- Bereinigen Sie Ihren Projektarbeitsbereich über Ihre IDE und erstellen Sie Ihr Projekt nur mit den erforderlichen Abhängigkeiten neu.
tl; DR
Einige relevante Diskussionen finden Sie in:
- Zeitüberschreitung beim Empfang der Nachricht vom Renderer
- Fehler [SEVERE]: Zeitüberschreitung beim Empfang der Nachricht vom Renderer: 20.000 beim Ausführen der Testsuite über Selenium auf Jenkins