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

如何通过Atlassian Python API获取Jira Xray测试运行状态

使用Atlassian Python API获取Jira Xray的测试运行及整体执行状态

一、关于xray.get_test_run_status参数的说明

你看到的示例中数字100是Xray内部的测试运行ID,而非测试用例或测试执行的Key。要通过testExecIssueKey=EXC-2&testIssueKey=TC-3这类信息获取状态,需要先拿到对应的测试运行ID,再调用该方法。

二、获取单个测试运行(TC-3在EXC-2中的执行)的状态

可以先获取指定测试执行下的所有测试运行记录,筛选出目标测试用例对应的条目,提取ID后查询状态:

# 获取测试执行EXC-2下的所有测试运行记录
test_exec_runs = xray.get_test_execution_tests("EXC-2")

# 筛选出测试用例TC-3对应的测试运行
target_run = next(run for run in test_exec_runs if run["testKey"] == "TC-3")
test_run_id = target_run["id"]

# 查询该测试运行的状态
run_status = xray.get_test_run_status(test_run_id)
print(f"TC-3在EXC-2中的执行状态: {run_status}")

三、获取测试执行(EXC-2)的整体执行状态

方法1:直接获取整体状态

使用get_test_execution_status方法,参数直接传入测试执行Key:

exec_status = xray.get_test_execution_status("EXC-2")
print(f"测试执行EXC-2的整体状态: {exec_status}")

方法2:获取详细执行统计

如果需要通过/失败/跳过等细分数据,可以调用get_test_execution获取完整详情后提取统计信息:

exec_details = xray.get_test_execution("EXC-2")
status_summary = exec_details["statusSummary"]
print(f"EXC-2执行统计: 通过{status_summary['pass']} | 失败{status_summary['fail']} | 跳过{status_summary['skip']}")

四、获取测试计划(PLAN-1)的整体执行状态

方法1:直接获取整体状态

使用get_test_plan_status方法,参数传入测试计划Key:

plan_status = xray.get_test_plan_status("PLAN-1")
print(f"测试计划PLAN-1的整体状态: {plan_status}")

方法2:汇总关联测试执行的统计

如果需要更细致的汇总数据,可以先获取测试计划关联的所有测试执行,再逐个统计后合并:

# 获取测试计划PLAN-1关联的所有测试执行Key
plan_execs = xray.get_test_plan_test_executions("PLAN-1")

# 初始化统计变量
total_pass = 0
total_fail = 0
total_skip = 0

# 遍历所有关联测试执行,累加统计数据
for exec_key in plan_execs:
    exec_details = xray.get_test_execution(exec_key)
    summary = exec_details["statusSummary"]
    total_pass += summary["pass"]
    total_fail += summary["fail"]
    total_skip += summary["skip"]

print(f"PLAN-1总执行统计: 通过{total_pass} | 失败{total_fail} | 跳过{total_skip}")

内容的提问来源于stack exchange,提问作者Oliver T.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 18:01:02