运行Robot Framework测试时ChromeDriver报错问题求助
问题分析与解决:ChromeDriver与Chrome版本不兼容导致的WebDriverException
问题场景
运行Robot Framework测试时触发WebDriverException错误,Chrome版本为119.0.6045.200(64位官方版),使用的ChromeDriver版本为118.0.5993.70,无法找到对应Chrome 119版本的ChromeDriver。
测试代码片段
def Myfunc(): for element in Group1.copy(): if (str(element)[0:2] == Atype): options = webdriver.ChromeOptions() driver = webdriver.Chrome(options) driver.get("https://example.com/")
错误信息
WebDriverException: Message: unknown error: result.webdriverValue.value list is missing or empty in Runtime.callFunctionOn response (Session info: chrome=119.0.6045.200) Stacktrace: GetHandleVerifier [0x00007FF6C2628EF2+54786] (No symbol) [0x00007FF6C2595612] (No symbol) [0x00007FF6C244A64B] (No symbol) [0x00007FF6C244EEC1] (No symbol) [0x00007FF6C245115F] (No symbol) [0x00007FF6C2451250] (No symbol) [0x00007FF6C248B424] (No symbol) [0x00007FF6C248B91C] (No symbol) [0x00007FF6C24C6D87] (No symbol) [0x00007FF6C24ABEAF] (No symbol) [0x00007FF6C24C4D02] (No symbol) [0x00007FF6C24ABC43] (No symbol) [0x00007FF6C2480941] (No symbol) [0x00007FF6C2481B84] GetHandleVerifier [0x00007FF6C2977F52+3524194] GetHandleVerifier [0x00007FF6C29CD800+3874576] GetHandleVerifier [0x00007FF6C29C5D7F+3843215] GetHandleVerifier [0x00007FF6C26C5086+694166] (No symbol) [0x00007FF6C25A0A88] (No symbol) [0x00007FF6C259CA94] (No symbol) [0x00007FF6C258CC83] RtlUserThreadStart [0x00007FFEFFAA26B1+33]
问题原因
核心原因是ChromeDriver与Chrome浏览器版本不匹配。ChromeDriver要求与Chrome的主版本号(如119)严格对应,低版本的ChromeDriver无法适配高版本Chrome的通信协议,导致运行时出现接口响应异常。
解决办法
- 直接获取对应版本的ChromeDriver:Chrome 119版本的ChromeDriver已正式发布,可通过官方测试渠道获取与Chrome 119.0.6045.200匹配的ChromeDriver版本,替换现有版本即可。
- 使用自动版本管理工具:集成WebDriverManager库(Robot Framework可通过Python依赖引入),它会自动检测本地Chrome版本,下载并配置对应的ChromeDriver,无需手动查找匹配版本。示例代码调整如下:
from webdriver_manager.chrome import ChromeDriverManager from selenium import webdriver def Myfunc(): for element in Group1.copy(): if (str(element)[0:2] == Atype): options = webdriver.ChromeOptions() driver = webdriver.Chrome(ChromeDriverManager().install(), options=options) driver.get("https://example.com/") - 临时降级Chrome:将Chrome浏览器降级到118版本,与现有ChromeDriver版本匹配,但不推荐长期使用,因为浏览器更新包含安全修复,降级会带来安全风险。
内容的提问来源于stack exchange,提问作者user17274386
相关产品推荐
相关产品推荐

