【问题标题】:Update VSTS test case status to PASS / FAIL using rest api使用 rest api 将 VSTS 测试用例状态更新为 PASS / FAIL
【发布时间】:2019-02-19 05:26:52
【问题描述】:

我想使用 rest api 更新 VSTS 中的测试用例状态。

根据测试用例 ID,我想将测试用例更新为 PASS 或 FAIL。

在我可以传递状态的地方可以使用哪个rest api?

谢谢

【问题讨论】:

    标签: azure-devops azure-devops-rest-api


    【解决方案1】:

    您可以为特定的测试用例更新the last test result,然后outcome 将反映在测试用例上。

    1. 首先获取最后的测试运行 ID。 (使用 REST API - Get a list of test runs
    2. 使用 REST API 更新特定的测试结果。

      PATCH https://dev.azure.com/{organization}/{project}/_apis/test/Runs/{runId}/results?api-version=5.0-preview.5
      

      请求正文

      [
        {  
          "id": 100000,
          "state": "Completed",
          "outcome": "Passed"
        }
      ]
      

    详情请见Update test results for a test run

    你可以参考这个类似的帖子:Changing the outcome field of testcases within a test suite in Tfs


    更新:

    如果您只想将测试用例标记为PassedFailed 并生成一个RUNID,那么您可以使用以下REST API:(在请求正文中提供PlanID、套件ID 和测试点ID)

    POST http://SERVER:8080/tfs/DefaultCollection/{ProjectName or ID}/_api/_testManagement/BulkMarkTestPoints
    
    Content-Type : application/json
    
    Request Body:
    
    {"planId":36,"suiteId":38,"testPointIds":[5],"outcome":3}
    
    1. 您可以从门户网站获取Plan IdSuite Id (R 下面的截图
    2. 您可以使用下面的 REST API 来获取testPointIds

      GET http://SERVER:8080/tfs/DefaultCollection/{ProjectName or ID}/_apis/test/Plans/36/Suites/38/points
      
    3. 对于outcome2 表示Passed3 表示Failed

    【讨论】:

    • 谢谢安迪。在获取最后一次测试运行中,我在哪里可以找到 Owner & build uri 的详细信息?
    • 我想根据测试用例ID更新测试用例并生成RunID。使用 RUNID 我将调用 restapi 调用来附加我的结果文件。
    • 谢谢安迪。你提供的方法奏效了。但是我用同样的方法使用了 vsts api。 :)
    • @Andy...我可以通过将 TestcaseId/WorkItemId 传递给restapi来获取 PlanId 和 SuiteId 吗?实际上我有 testcaseId 这是一个工作项,我想知道 testcaseid 所在的测试计划和测试套件。
    • @Amruta 是的,你可以使用 API 来实现,建议你为这个问题打开一个新线程,然后我可以为你发布答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多