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

使用v1.0导入Cucumber/Karate JSON至X-ray时响应不符合预期

导入Cucumber/Karate测试结果到X-Ray的响应异常问题

问题现象

尝试将Cucumber/Karate测试执行结果以JSON格式导入X-Ray时,返回的响应仅包含testExecIssue和空数组infoMessages,未出现预期的testIssues和success字段,且测试结果未成功关联到生成的测试执行工单(XXXXXX-123)。返回响应如下:

{"testExecIssue": {
    "id": "some number",
    "key": "XXXXXX-123",
    "self": "https://<jira host>/rest/api/2/issue/4611911"
  },
  "infoMessages": []
}

排查与解决方向

1. 检查JSON格式的合规性

X-Ray对Cucumber测试结果的JSON结构有明确要求,重点确认:

  • 每个feature/scenario的id或name需与Jira中已存在的测试用例标识完全匹配(X-Ray依赖此字段关联测试用例)
  • 测试结果的status字段必须是X-Ray支持的有效值:PASS、FAIL、SKIP、PENDING等
  • 确保JSON无语法错误(如缺失逗号、引号不闭合、嵌套结构错误)

2. 确认测试执行与测试用例的关联关系

返回的testExecIssue说明测试执行工单已创建,但测试结果未关联,可能是:

  • 该测试执行工单(XXXXXX-123)未预先添加对应的测试用例
  • 导入请求未指定testPlanKey等参数,导致X-Ray无法自动关联测试用例到新创建的测试执行中

3. 排查Karate结果转Cucumber JSON的过程

若你是通过Karate生成报告后转换为Cucumber格式,需确认:

  • 转换工具(如Karate内置的转换功能)是否完整保留了scenario的唯一标识(如id)
  • 转换后的JSON是否丢失了测试步骤的结果状态或关键元数据

4. 验证API权限与端点

  • 确认使用的X-Ray API端点符合你的Jira版本(云版与服务器版API路径不同)
  • 检查请求所用账号是否拥有编辑测试执行和关联测试结果的权限

验证方法

  1. 使用X-Ray官方提供的Cucumber JSON示例发起导入请求,验证是否能返回预期的testIssues和success字段
  2. 对比你的JSON与官方示例的结构差异,重点修正标识字段和结果状态部分
  3. 手动在Jira中将目标测试用例添加到XXXXXX-123测试执行,再重新导入测试结果,观察是否能成功关联

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 09:41:01