将 Xunit 结果导入 Xray/Jira

问题描述

我正在使用 Jira 云并尝试使用 Jira rest API 将黄瓜生成的 Xunit json 报告(result.json)导入 Jira 和 Xray,我尝试了各种方法从命令行导入报告,但到目前为止还没有运气。

例如:

curl -H "Content-Type: application/json" -X POST -u ID:token -F "file=D:\Report.json" "https://raheel.atlassian.net/api/v2/import/execution"
curl -H "Content-Type: application/json" -X POST -u  user:token --data @"D:\Report.json" "https://raheel.atlassian.net/rest/api/3/issue/DEM-9"
curl -H "Content-Type: application/json" -X POST -u  user:token --data @"D:\Report.json" "https://raheel.atlassian.net/rest/raven/2.0/api/Test Execution/DEM-12"

**Error:**

<?xml version="1.0" encoding="UTF-8" standalone="yes"?><status><status-code>404</status-code><message>null for uri: https://raheel.atlassian.net/rest/raven/2.0/api/Test%20Execution/DEM-12</message></status>
token=$(curl -H "Content-Type: application/json" -X POST --data @"{ "client_id": "ID","client_secret": "secret" }" https://xray.cloud.xpand-it.com/api/v2/authenticate| tr -d '"') curl -H "Content-Type: application/json" -X POST -H "Authorization: Bearer $token"  --data @"D:\Report.json" https://xray.cloud.xpand-it.com/api/v2/import/execution/cucumber

解决方法

首先,您似乎正在使用 Xray Cloud(即 Xray for Jira Cloud)。 可以在 here 中找到 Xray Cloud 的 REST API 的正确文档。

首先,您需要在 Xray settings 上创建 API 密钥(客户端 ID 和客户端密钥对)。 然后,您需要进行身份验证以获取您需要在所有后续请求中提供的令牌。

下面的例子,展示了一种用token值设置shell变量的方法,以便在后续请求中使用

token=$(curl -H "Content-Type: application/json" -X POST --data @"cloud_auth.json" https://xray.cloud.xpand-it.com/api/v2/authenticate| tr -d '"')

然后您可以调用 REST API 端点来提交 Cucumber JSON 报告。

curl -H "Content-Type: application/json" -X POST -H "Authorization: Bearer $token"  --data @"Report.json" https://xray.cloud.xpand-it.com/api/v2/import/execution/cucumber

请注意,为了使用黄瓜 JSON 报告导入与黄瓜相关的结果,您的场景需要正确标记。您需要遵循详细的流程之一 here

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...