【问题标题】:How to add Test Case into TFS via REST如何通过 REST 将测试用例添加到 TFS
【发布时间】:2019-06-28 08:27:00
【问题描述】:

我正在实现 lib 以在测试运行期间自动将测试用例导出/同步到 TFS 中。我的要求之一是我需要为此使用 NodeJS,所以我决定使用 TFS REST API。在我的代码中,我使用“azure-devops-node-api”库,我可以连接并获取不同的元素,添加测试用例没有运气。

我在网上发现 TestCase 是一种 WorkItem,应该添加 WI。不幸的是,我没有找到使用 azure-devops-node-api 添加一个的方法。

我也尝试发送手动构建的 json,不幸的是没有运气找到正确的 url 发送,因为我总是得到:

Error: {"statusCode":404,"body":"Page not found."

我的示例请求:

 request.post({
            url: 'https://<url>/tfs/<default collection maybe?>/<project>/_apis/wit/workItems/test%20case',
            headers: {
                'Content-Type': 'application/json',
                'Authorization':'Basic ' + this.encodePat('<my auth token>')
            },
            rejectUnauthorized: false,//add when working with https sites
            requestCert: false,//add when working with https sites
            agent: false,//add when working with https sites
            json: rq
        },function (response, err, body){

            if (err) throw new Error(JSON.stringify(err));

            console.log('Body:',JSON.parse(body));
            console.log('Response:',response)
        });  

有谁知道我在做什么或者 azure-devops-node-api 是否能够添加 WorkItems ?

【问题讨论】:

    标签: node.js rest tfs azure-devops-rest-api


    【解决方案1】:

    如果您只想将测试用例添加为工作项,则必须使用此链接中的模板Work Items - Create

    POST https://dev.azure.com/{organization}/{project}/_apis/wit/workitems/${type}?api-version=5.0

    您必须添加到 url "?api-version=X.0"。例子:

    https://&lt;server name and port&gt;/tfs/&lt;collection name should be&gt;/&lt;project&gt;/_apis/wit/workItems/$test%20case?api-version=3.0

    您还必须使用此模板对您的 pat 进行编码:

    'Authorization':'Basic ' + this.encodePat(':&lt;my auth token&gt;')

    您可以在此处找到使用 node.js 构建任务的示例:https://github.com/ashamrai/AzureDevOpsExtensions/blob/master/CustomBuildTask/NewWICustomTask/index.ts

    【讨论】:

    • 看来我“几乎”一切正常 - 问题是我在 URL 中的 WorkItemType 之前错过了“$”符号 :) 非常感谢!
    猜你喜欢
    • 2019-06-23
    • 2021-11-18
    • 2014-12-08
    • 1970-01-01
    • 2016-05-17
    • 1970-01-01
    • 2020-09-27
    • 1970-01-01
    • 2019-01-14
    相关资源
    最近更新 更多