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

如何从Test Rail项目提取测试用例的两类自动化状态计数?

从Test Rail项目提取自定义状态字段计数的方法

这不属于Test Rail的功能限制,你可以通过以下两种可行方法提取「Automation creation status」和「Automation Required status」的计数:

方法一:内置筛选与手动统计/导出统计

  • 进入目标项目的测试用例库页面
  • 点击页面顶部的「筛选」按钮,在筛选面板中找到这两个自定义字段,选择要统计的具体状态值(比如“已完成”“待创建”等)
  • 应用筛选后,页面顶部会直接显示符合条件的用例总数,手动记录该数值;重复切换不同状态值,即可完成所有状态的计数统计
  • 如果需要批量处理,可点击「导出」按钮将筛选后的用例导出为CSV文件,再用Excel的透视表功能批量统计各状态的数量

方法二:Test Rail API自动化统计

适合需要批量处理或自动化统计的场景,步骤如下:

  1. 先通过GET index.php?/api/v2/get_cases/{project_id}接口获取目标项目下所有测试用例的列表
  2. 遍历每个用例ID,调用GET index.php?/api/v2/get_case/{case_id}接口获取包含自定义字段的用例详情
  3. 从返回的JSON数据中提取两个自定义字段的状态值(字段键为自定义字段的「系统名称」,可在Test Rail「管理→自定义字段」页面查看),统计各状态的出现次数

示例Python代码片段:

import requests

TESTRAIL_BASE_URL = "你的Test Rail实例地址"
AUTH = ("你的账号邮箱", "你的API密钥")
PROJECT_ID = 你的项目ID

# 初始化会话
session = requests.Session()
session.auth = AUTH
session.headers["Content-Type"] = "application/json"

# 获取所有测试用例(支持分页,此处示例为基础版)
cases_res = session.get(f"{TESTRAIL_BASE_URL}/index.php?/api/v2/get_cases/{PROJECT_ID}")
cases = cases_res.json()

# 初始化计数器
creation_status_count = {}
required_status_count = {}

# 遍历统计
for case in cases:
    # 替换为你的自定义字段系统名称
    creation_status = case.get("custom_automation_creation_status")
    required_status = case.get("custom_automation_required_status")
    
    if creation_status:
        creation_status_count[creation_status] = creation_status_count.get(creation_status, 0) + 1
    if required_status:
        required_status_count[required_status] = required_status_count.get(required_status, 0) + 1

print("Automation creation status 计数:", creation_status_count)
print("Automation Required status 计数:", required_status_count)

注意事项

  • 如果项目用例数量较多,调用API时需添加offset和limit参数做分页处理,避免请求超时
  • 自定义字段的「系统名称」是API返回数据中的键名,不要直接使用字段的显示名称

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 12:33:12