我尝试使用Selenium在Java上运行此简单程序:
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class MySelenium {
public static void main(String[] args) {
System.out.println("First Selenium");
System.setProperty("webdriver.chrome.driver", "C:\\automation\\drivers\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("https://www.seleniumhq.org/");
driver.quit();
}
}
但是在运行时显示以下错误:
如何解决此错误?
答案 0 :(得分:1)
此错误消息...
org.openqa.selenium.SessionNotCreatedException: session not created
disconnected: unable to send message to renderer
...表示 ChromeDriver 无法启动/产生新的 WebBrowser ,即 Chrome浏览器会话。
我怀疑您的主要问题是所使用的二进制文件版本之间的不兼容性。
根据快照,您提供了以下正在使用的二进制文件集:
根据Unable to receive message from renderer error using chrome driver 2.27,另一个可能的原因可能是 localhost 中存在防病毒,您需要禁用
确保系统上的 / etc / hosts 包含以下条目:
127.0.0.1 localhost.localdomain localhost
#or
127.0.0.1 localhost loopback
将 Chrome 版本保持在 Chrome v68-70 级别之间。 (as per ChromeDriver v2.43 release notes)
@Test
。根据ChromeDriver 2.34 doesn't wait until iframe content loads after switching into iframe, ChromeDriver 2.38 和 Chrome 67 + 组合也发现了此问题,并且与静态iframe 有关(最初加载的DOM的一部分),即使直到 Chrome 66 。
答案 1 :(得分:0)
尝试使用JDK:1.8.0_181,更新到JDK:1.8.0_191后,我遇到相同的问题