调用Jira XRay API更新Test Execution描述与摘要失败如何解决
问题排查解决步骤
1. 确认接口用途与请求参数正确性
rest/raven/1.0/import/execution接口的核心能力是导入测试执行结果,仅在创建新的Test Execution时才会默认使用info下的description、summary字段填充,若请求中指定的testExecutionKey对应已存在的Test Execution条目,默认配置下接口不会覆盖已有的摘要、描述字段,仅会更新测试用例执行结果。- 检查请求体是否遗漏对应字段:你当前示例只传了
description,如果要同时更新摘要,需要在info节点下新增summary字段,参考请求体如下:
{ "testExecutionKey": "DEMO-1206", "info" : { "summary": "更新后的测试执行摘要", "description" : "This execution is automatically created when importing execution results from an external source" } }
2. 检查Xray全局配置
- 进入Jira的Xray管理后台,找到「测试执行导入」相关配置项,确认是否开启了
覆盖已有Test Execution的基础字段开关,默认该开关是关闭状态,避免导入结果时误覆盖用户手动修改的摘要、描述信息。 - 确认你使用的账号对目标Test Execution所属项目有「编辑问题」权限,即使接口返回200,若账号无编辑权限,字段变更也会被Jira权限校验拦截,仅执行结果更新部分会生效。
3. 验证字段ID匹配性
- 若你的Jira实例对Test Execution问题类型的摘要、描述字段做了自定义改造(比如用自定义字段替代原生描述字段),需要确认
info下传递的字段键名是否和Xray配置的映射字段一致,原生字段用summary、description即可,自定义字段需要传递对应自定义字段ID,例如customfield_12301。
4. 查看接口返回体与系统日志
- 即使响应状态码是200,也要检查返回的JSON内容中是否有
warning字段,通常字段未更新的原因会在警告信息中明确标注,比如「已跳过已有Test Execution的info字段更新」。 - 排查Jira系统日志中对应请求的处理记录,确认是否存在字段校验失败、权限拦截的相关报错日志。
临时替代方案
如果确认当前接口确实无法覆盖已有Test Execution的基础字段,可以先调用Jira原生的问题更新接口PUT /rest/api/2/issue/{testExecutionKey}单独更新摘要和描述字段。
内容的提问来源于stack exchange,提问作者Sumit Agarwal
相关产品推荐
相关产品推荐

