Testing 在Azure Devops上获取详细的测试报告导出

Testing 在Azure Devops上获取详细的测试报告导出,testing,azure-devops,azure-devops-server,test-reporting,Testing,Azure Devops,Azure Devops Server,Test Reporting,我正在寻找在Azure Devops上导出详细测试报告的方法。 我的目标不仅是显示测试是通过还是失败,而且还要显示详细的测试步骤和我在测试过程中添加的注释。恐怕没有现成的方法来满足您的要求 目前,azure devops的现有功能仅支持导出测试步骤的最新结果。但它不会包含每个测试步骤的测试注释和结果。 因此,您可以尝试使用RESTAPI获取数据并生成报告 这里有一个例子:和 结果: 如果您想获得更详细的函数,则需要添加更多API来实现此函数。这将大大增加代码量 因此,我建议您可以创建一个建议

我正在寻找在Azure Devops上导出详细测试报告的方法。
我的目标不仅是显示测试是通过还是失败,而且还要显示详细的测试步骤和我在测试过程中添加的注释。

恐怕没有现成的方法来满足您的要求

目前,azure devops的现有功能仅支持导出测试步骤的最新结果。但它不会包含每个测试步骤的测试注释和结果。

因此,您可以尝试使用RESTAPI获取数据并生成报告

这里有一个例子:和

结果:

如果您想获得更详细的函数,则需要添加更多API来实现此函数。这将大大增加代码量

因此,我建议您可以创建一个建议提示集来报告此功能

这是现有的建议单,您也可以参考:

$token = "PAT"

$url="https://dev.azure.com/{OrganizationName}/{ProjectName}/_apis/test/runs?api-version=6.0"

$token = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($token)"))

$response = Invoke-RestMethod -Uri $url -Headers @{Authorization = "Basic $token"} -Method Get -ContentType application/json

ForEach( $testrunid in $response.value.id)
{

   $url1 = "https://dev.azure.com/{OrganizationName}/{ProjectName}/_apis/test/Runs/$($testrunid)/results/100000?detailsToInclude=5&api-version=6.0" 
   $response1 = Invoke-RestMethod -Uri $url1 -Headers @{Authorization = "Basic $token"} -Method Get -ContentType application/json

   ForEach( $teststep in $response1.iterationDetails.actionResults)
   {
         $testcaseid = $response1.testcase.id

         $testcasename = [String]$response1.testcase.name

         $testplanid = $response1.testPlan.id

         $testsuiteid =  $response1.testSuite.id

         $testsuitename =  $response1.testSuite.name

         $teststepid = $teststep.stepIdentifier

         $teststepoutcome = $teststep.outcome

         $teststepcomment = $teststep.errorMessage

         

         $Output = New-Object -TypeName PSObject -Property @{
             testcaseid = $testcaseid
             testcasename = $testcasename
             testplanid = $testplanid
             testsuiteid = $testsuiteid
             testsuitename = $testsuitename
             teststepid = $teststepid
             teststepoutcome = $teststepoutcome
             teststepcomment = $teststepcomment
          } | Select-Object testcaseid, testcasename,testplanid,testsuiteid,testsuitename,teststepid,teststepoutcome,teststepcomment
          $Output | Export-Csv D:\TestReportsample.csv -Append
   
   }

}