在我的 Selenium 自动化设置的
repositorymap.xml
文件中指定的 ChromeDriver 二进制文件遇到兼容性问题。尽管按照“Mastering Selenium 3.0 Second Edition”中的建议尝试更新 <filelocation>
和 <hash>
属性以反映最新的 ChromeDriver 版本 124.0.6367.202,浏览器会话仍无法启动,并显示错误消息:
session not created: This version of ChromeDriver only supports Chrome version 90. Current browser version is 124.0.6367.202 with binary path C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe
作为参考,可以在此处找到正在使用的存储库地图。
我修改后的结构如下:
<driver id="googlechrome">
<version id="124">
<bitrate thirtytwobit="true" sixtyfourbit="true">
<filelocation>https://storage.googleapis.com/chrome-for-testing-public/125.0.6422.60/win32/chromedriver-win32.zip</filelocation>
<hash>Updated_Hash_Value</hash>
<hashtype>sha1</hashtype>
</bitrate>
</version>
</driver>
尽管进行了这些调整,问题仍然存在,并且测试失败并出现错误:
[ERROR] Tests run: 2, Failures: 2, Errors: 0, Skipped: 0, Time elapsed: 4.118 s <<< FAILURE! - in com.masteringselenium.BasicIT
[ERROR] googleCheeseExample(com.masteringselenium.BasicIT) Time elapsed: 1.853 s <<< FAILURE!
org.openqa.selenium.SessionNotCreatedException:
session not created: This version of ChromeDriver only supports Chrome version 90. Current browser version is 124.0.6367.202 with binary path C:\Program Files\Google\Chrome\Application\chrome.exe
Build info: version: '3.12.0', revision: '7c6e0b3', time: '2018-05-08T14:04:26.12Z'
System info: host: 'DESKTOP-AAFER2Q', ip: '172.21.144.1', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '21'
Driver info: driver.version: ChromeDriver
寻求有关如何有效更新 ChromeDriver 二进制文件并解决此兼容性问题的指导。任何帮助或见解将不胜感激。
从 Selenium 4.6 开始,添加了 SeleniumManager,它会自动为您下载和配置适当的驱动程序。因此,您不再需要使用 DriverManager 或指定路径等。
您所需要的只是
String url = "https://www.google.com";
driver = new ChromeDriver();
driver.manage().window().maximize();
driver.get(url);