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

如何在Jenkins上运行Selenium .side测试并正确识别结果

解决Jenkins运行.side文件始终标记成功的问题

我来帮你梳理这个问题的解决方案,分两部分给你说明:

一、简洁的命令行解决办法

Jenkins是根据命令的退出码判断构建状态的——返回0则标记成功,非0则标记失败。你遇到的问题大概率是selenium-side-runner在测试失败时没有返回正确的非零退出码,或者版本过旧导致的。

1. 优先升级selenium-side-runner

最新版的selenium-side-runner已经修复了退出码的问题,测试失败时会自动返回非零值,Jenkins就能正确识别状态。先升级到最新版本:

npm install -g selenium-side-runner@latest

之后再运行你的测试命令:

selenium-side-runner /path/to/file.side

升级后如果测试失败,Jenkins会自动标记构建为失败状态。

2. 脚本包装(升级后仍有问题时使用)

如果升级后还是无法正常识别失败状态,可以用shell脚本捕获测试报告的结果,手动控制退出码。selenium-side-runner支持生成JSON格式的测试报告,我们可以解析这个报告判断是否有失败用例:

# 运行测试并指定报告输出目录
selenium-side-runner /path/to/file.side --output-directory ./selenium-reports

# 用jq工具解析JSON报告,统计失败用例数(需提前在Jenkins节点安装jq)
FAILED_CASES=$(jq '.results[].failed' ./selenium-reports/*.json | grep -c 1)

# 如果失败数大于0,返回非零退出码让Jenkins标记失败
if [ "$FAILED_CASES" -gt 0 ]; then
  echo "检测到$FAILED_CASES个失败测试用例"
  exit 1
fi

二、Jenkins插件方案:Selenium IDE Plugin

如果你想更省心,不用自己写脚本处理结果,Jenkins官方插件库中有专门的Selenium IDE Plugin,它可以直接运行.side文件,并且自动处理测试结果展示和构建状态标记。

使用步骤:

  • 在Jenkins的「插件管理」中搜索并安装Selenium IDE Plugin
  • 进入任务配置页,添加新的构建步骤,选择「Run Selenium IDE Tests」
  • 在配置项中:
    • 指定.side文件的路径(可以是工作空间内的文件,也可以直接上传)
    • 根据需求配置浏览器、Selenium Grid地址等参数(如果需要分布式运行)
  • 保存配置后运行构建,插件会自动完成:
    • 测试全过:Jenkins标记构建成功
    • 有测试失败:Jenkins标记构建失败,同时在构建页面展示详细的测试报告,包括每个步骤的执行状态

这个插件完全封装了测试执行和结果解析的逻辑,比手动写命令行脚本更简洁可靠。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.13 08:45:14