geb.driver.DriverCreationException:无法从回调创建驱动程序

问题描述 投票:0回答:3

我在运行测试脚本时遇到异常。

geb.driver.DriverCreationException: failed to create driver from callback 'script1501516684770944233575$_run_closure1@6601cc93'
java.lang.NoClassDefFoundError: Lorg/openqa/selenium/remote/html5/RemoteWebStorage;
failed to create driver from callback 'script1501516684770944233575$_run_closure1@6601cc93'

OS: Windows 10 64 bit
Chrome browser: v60 (latest one)
Selenium :-2.43.1
Chrome web driver:-2.24.417431

geb-version:0.10.0
geb-testng-version:0.13.1
geb-spoc-version:0.13.1

提前致谢...!

selenium geb
3个回答
0
投票

这将是一个版本问题(您的旧网络驱动程序与较新的 chrome 版本不兼容)。如果您使用的是最新版本的 chrome,我建议迁移到最新版本的 selenium 和 chrome 驱动程序。

事实上,谷歌快速搜索表明我可能是对的:https://sites.google.com/a/chromium.org/chromedriver/downloads

最新版本:ChromeDriver 2.31

支持 Chrome v58-60


0
投票

如果您在执行测试时没有正确定义 chrome 驱动程序位置,则可能会引发此错误。

在您的 GebConfig 中:

driver = {
   System.setProperty('webdriver.chrome.driver', '/Users/foo/drivers/chromedriver')
   new ChromeDriver()
}

或者如果从 intelliJ 运行/调试配置运行,则在诸如 VM 参数之类的内容中:

-Dbrowser=chrome -Dwebdriver.chrome.driver="/Users/foo/drivers/chromedriver/chromedriver.exe"

0
投票

我遇到这个问题几天了,终于明白原因了。当我将浏览器设置为 chrome 或 firefox,然后尝试运行测试时,Jenkins 上出现了这个问题。这是由于 Jenkins 机器上未安装浏览器而发生的。驱动程序存在于代码中,但应在计算机上安装浏览器,否则 Geb 将抛出此错误。希望这有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.