如何通过Perforce Swarm API重新运行测试
通过Swarm API重跑评审关联测试的实现方法
Swarm网页端的Rerun test功能对应的接口未收录在常规公开API文档中,可按以下步骤调用对应内部接口实现相同效果:
- 第一步:获取目标测试对应的测试运行ID和所属的评审ID,调用
GET /api/v9/reviews/{评审ID}/tests接口拉取该评审下所有关联测试列表,从返回结果的runs字段中提取待重跑测试对应的run_id参数。 - 第二步:调用测试重跑接口,请求规则如下:
- 接口地址:
POST /api/v9/testruns/{run_id}/rerun - 请求头必须携带Swarm授权凭证:
Authorization: ApiKey 你的Swarm用户名:你的Swarm API密钥 - 请求体无需传额外参数,发送空JSON或空body均可正常触发重跑
- 接口地址:
- 若需要批量重跑指定评审下所有失败的测试,可先从第一步的接口返回结果中筛选出状态为失败的测试的
run_id,循环调用重跑接口即可。
以下是请求示例:
curl -X POST "https://你的Swarm服务地址/api/v9/testruns/12345/rerun" \ -H "Authorization: ApiKey zhangsan:7a1b2c3d4e5f6g7h8i9j0k" \ -H "Content-Type: application/json"
版本适配提示:若你使用的Swarm版本低于2020.1,将接口版本号从v9替换为v8即可,
/api/v8/testruns/{run_id}/rerun的功能逻辑和调用方式完全一致。
该接口重跑测试时会完全复用原测试运行的所有配置,包括关联的评审信息、测试环境参数、触发规则等,和网页端点击Rerun test按钮的执行效果完全相同。
内容的提问来源于stack exchange,提问作者TOBEALISTENER
相关产品推荐
相关产品推荐

