You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于Appian的Cucumber自动化测试突发ChromeDriver WebSocket连接失败

Appian自动化测试框架ChromeDriver WebSocket连接失败(403 Forbidden)解决方案

核心问题分析

从日志来看,ChromeDriver启动成功但WebSocket连接被拒绝(403状态码),这是ChromeDriver与浏览器版本不兼容、安全策略拦截或框架配置缺失引发的协议层问题。

解决步骤

1. 严格匹配Chrome与ChromeDriver版本

别只确认ChromeDriver已更新,必须保证Chrome浏览器和ChromeDriver的大版本完全一致。比如Chrome是112.x,ChromeDriver也得是112.x,小版本差异可能触发W3C协议兼容问题。

  • 查看Chrome版本:打开chrome://version/
  • 查看ChromeDriver版本:终端运行chromedriver --version
  • 版本不匹配就下载对应版本的ChromeDriver替换现有文件

2. 给ChromeDriver添加启动参数绕过权限限制

由于你无法修改框架的CucumberBaseFixture,试试通过框架的配置文件添加Chrome启动参数:

  • 推荐测试环境使用的参数组合:
    # 若框架使用cucumber.properties配置浏览器参数
    browser.chrome.args=--remote-allow-origins=*,--no-sandbox
    
    • --remote-allow-origins=*:解决跨域WebSocket连接限制
    • --no-sandbox:避免企业安全软件拦截沙箱内的连接
  • 如果框架有自定义配置界面,直接将这些参数填入Chrome启动参数栏即可

3. 排查企业安全软件拦截

403错误大概率是公司安全工具拦截导致:

  • 临时关闭测试机上的EDR、防火墙软件,重新运行测试验证
  • 禁用Chrome所有第三方扩展(尤其是安全类),再尝试执行测试
  • 确认本地防火墙允许localhost的随机端口(50000+)进行双向连接

4. 清空Chrome用户数据缓存

Chrome的配置文件损坏可能引发WebSocket连接异常:

  • 找到Chrome用户数据目录:Windows默认路径为C:\Users\<你的用户名>\AppData\Local\Google\Chrome\User Data
  • 将该目录重命名为User Data Backup,让Chrome生成全新的干净配置文件
  • 重新运行测试

5. 更新Appian自动化框架jar包

框架可能未适配新版ChromeDriver:

  • 检查内部仓库是否有最新版的Appian自动化框架jar包,替换旧版本
  • 查询框架内部文档,确认是否有针对Chrome 110+版本的适配说明

错误信息备查

org.openqa.selenium.remote.http.ConnectionFailedException: Unable to establish websocket connection to http://localhost:50576/devtools/browser/12acb1c1-5b1c-46c2-7501-a8958019eb0f

关联日志:

ChromeDriver was started successfully.
Mar 13, 2023 4:22:09 PM org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: W3C
Mar 13, 2023 4:22:09 PM org.openqa.selenium.remote.http.WebSocket$Listener onError
WARNING: Invalid Status code=403 text=Forbidden

内容的提问来源于stack exchange,提问作者jesric1029

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 03:57:46