由于卷曲,将黄瓜结果导入 Jira/Xray

Import cucumber results to Jira/Xray due the curl

对于导入结果,我使用 curl

var util = require('util');
var exec = require('child_process').exec;

var command = 'curl -u username:password -F info=@cypress/support/xray-json/issue-data.json -F result=@cypress/cucumber-json/test-results.json https://project.atlassian.net/rest/raven/1.0/import/execution/cucumber'

child = exec(command, function (error, stdout, stderr) {

    console.log('stdout: ' + stdout);
    console.log('stderr: ' + stderr);

    if (error !== null) {
        console.log('exec error: ' + error);
    }

});

但也收到以下错误

如果您在 Jira Cloud 上使用 Xray... 在 bash 脚本中使用 curl 执行此请求的示例如下:

# the followin URL corresponds Xray Cloud domain that provides multiple endpoints, for authenticating and other operations
BASE_URL=https://xray.cloud.getxray.app
token=$(curl -H "Content-Type: application/json" -X POST --data @"cloud_auth.json" "$BASE_URL/api/v2/authenticate"| tr -d '"')
curl -H "Content-Type: application/json" -X POST -H "Authorization: Bearer $token"  --data @"report.json" "$BASE_URL/api/v2/import/execution/cucumber"

在前面的脚本中,我们可以看到使用了两个端点:一个用于身份验证,另一个用于导入结果:

这些端点来自Xray云本身;不是来自吉拉。它们不是特定于 Jira 实例的;他们没有改变。

上面用的cloud_auth.json,内容是这样的:

{ "client_id": "DA2258616A594400000000","client_secret": "5bae1aa5b49e5d263781da54ba0000000000000000000" }

您需要从 Xray 全局设置中配置的 API 键获取 client_id 和 client_secret。

一般来说,

请注意,前一个端点是“标准端点”,或者换句话说,是最简单易用的端点。还有另一个端点,称为多部分。语法不同。你可能会在这里看到一个example

您可能会找到有关 Xray Cloud REST API 端点 here 的更多信息(目前该站点似乎有一些负载)。