共用方式為


測試摘要範例報告

Azure DevOps Services |Azure DevOps Server 2022 |Azure DevOps Server 2020

當您執行管線執行並包含管線定義中的測試工作時,您可以建立報告,指出不同測試結果的測試回合數目: 已通過失敗未執行不受影響

下圖顯示測試摘要報表的範例。

測試摘要環圈報表的螢幕快照。

使用本文中提供的查詢來產生下列報告:

  • 建置工作流程的測試摘要
  • 發行工作流程的測試摘要
  • 特定分支的測試摘要
  • 特定測試檔案的測試摘要
  • 特定測試擁有者的測試摘要

重要

Azure DevOps Services 和 Azure DevOps Server 2020 和更新版本的 Power BI 整合 和存取 Analytics Service 的 OData 摘要 已正式推出。 本文中提供的範例查詢僅適用於 Azure DevOps Server 2020 和更新版本,且相依於 v3.0-preview 或更新版本。 我們鼓勵您使用這些查詢並提供意見反應。

必要條件

  • 存取:至少是具有基本存取權的項目成員。
  • 許可權: 根據預設,項目成員具有查詢分析及建立檢視的許可權。
  • 如需有關服務與功能啟用和一般數據追蹤活動之其他必要條件的詳細資訊,請參閱 存取分析的許可權和必要條件。

注意

本文假設您已閱讀 使用 OData 查詢 的範例報表概觀,並具備 Power BI 的基本瞭解。

範例查詢

您可以使用實體集的 TestResultsDaily 下列查詢來建立不同但類似的管線測試摘要報告。 實體 TestResultsDaily 集會提供依測試分組的 TestResult 每日執行快照集匯總。

注意

若要判斷篩選或報表用途的可用屬性,請參閱 Test Plans Analytics 的 元數據參考和 Azure Pipelines 的元數據參考。 您可以使用的 或 NavigationPropertyBinding PathEntitySet底下EntityType的任何Property值來篩選查詢或傳回屬性。 每個 EntitySet 對應至 EntityType。 如需每個值之數據類型的詳細資訊,請檢閱針對對應 EntityType提供的元數據。

建置工作流程的測試摘要

使用下列查詢來檢視建置工作流程管線的測試摘要。

將下列 Power BI 查詢直接複製並貼到 [取得資料>空白查詢] 視窗中。 如需詳細資訊,請參閱 使用 OData 查詢的範例報表概觀

let
   Source = OData.Feed (
      "https://analytics.dev.azure.com/mseng/AzureDevOps/_odata/v4.0-preview/TestResultsDaily?"
      &"$apply=filter("
      &"Pipeline/PipelineName eq '{pipelineName}' "
      &"And DateSK ge {startdate} "
      &"And Workflow eq 'Build' "
      &")/aggregate("
      &"ResultCount with sum as ResultCount, "
      &"ResultPassCount with sum as ResultPassCount, "
      &"ResultFailCount with sum as ResultFailCount, "
      &"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
      &"ResultNotImpactedCount with sum as ResultNotImpactedCount"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

將和 {startdate} 取代{pipelineName}為您查詢的實際值。

發行工作流程的測試摘要

使用下列查詢來檢視發行工作流程管線的測試摘要。

注意

若要判斷篩選或報表用途的可用屬性,請參閱 Test Plans Analytics 的元數據參考。 您可以使用的 或 NavigationPropertyBinding PathEntitySet底下EntityType的任何Property值來篩選查詢或傳回屬性。 每個 EntitySet 對應至 EntityType。 如需每個值之數據類型的詳細資訊,請檢閱針對對應 EntityType提供的元數據。

將下列 Power BI 查詢直接複製並貼到 [取得資料>空白查詢] 視窗中。 如需詳細資訊,請參閱 使用 OData 查詢的範例報表概觀

let
   Source = OData.Feed (
      "https://analytics.dev.azure.com/mseng/AzureDevOps/_odata/v4.0-preview/TestResultsDaily?"
      &"$apply=filter("
      &"Pipeline/PipelineName eq '{pipelineName}' "
      &"And DateSK ge {startdate} "
      &"And Workflow eq 'Release'"
      &")/aggregate("
      &"ResultCount with sum as ResultCount, "
      &"ResultPassCount with sum as ResultPassCount, "
      &"ResultFailCount with sum as ResultFailCount, "
      &"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
      &"ResultNotImpactedCount with sum as ResultNotImpactedCount"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

依分支篩選的測試摘要

若要檢視特定分支管線的測試摘要,請使用下列查詢。 若要建立報告,請執行下列額外步驟,以及本文稍後所指定的內容。

  • 展開 BranchBranch.BranchName
  • 選取 Power BI 視覺效果交叉分析篩選器,並將欄位新增至交叉分析篩選器的欄位Branch.BranchName
  • 從交叉分析篩選器中選取需要查看結果摘要的分支名稱。

如需使用交叉分析篩選器的詳細資訊,請參閱 Power BI 中的交叉分析篩選器。

將下列 Power BI 查詢直接複製並貼到 [取得資料>空白查詢] 視窗中。 如需詳細資訊,請參閱 使用 OData 查詢的範例報表概觀

let
   Source = OData.Feed (
      "https://analytics.dev.azure.com/mseng/AzureDevOps/_odata/v4.0-preview/TestResultsDaily?"
      &"$apply=filter("
      &"Pipeline/PipelineName eq '{pipelineName}' "
      &"And DateSK ge {startdate} "
      &"And Workflow eq 'Build'"
      &")/groupby("
      &"(Branch/BranchName),"
      &"aggregate("
      &"ResultCount with sum as ResultCount, "
      &"ResultPassCount with sum as ResultPassCount, "
      &"ResultFailCount with sum as ResultFailCount, "
      &"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
      &"ResultNotImpactedCount with sum as ResultNotImpactedCount"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

測試檔案篩選的測試摘要

若要檢視特定測試檔案之管線的測試摘要,請使用下列查詢。 若要建立報告,請執行下列額外步驟,以及本文稍後所定義的內容。

  • 展開 TestTest.ContainerName
  • 選取 Power BI 視覺效果交叉分析篩選器,並將欄位新增至交叉分析篩選器的欄位Test.ContainerName
  • 從交叉分析篩選器中選取需要查看結果摘要的容器名稱。

將下列 Power BI 查詢直接複製並貼到 [取得資料>空白查詢] 視窗中。 如需詳細資訊,請參閱 使用 OData 查詢的範例報表概觀

let
   Source = OData.Feed (
      "https://analytics.dev.azure.com/mseng/AzureDevOps/_odata/v4.0-preview/TestResultsDaily?"
      &"$apply=filter("
      &"Pipeline/PipelineName eq '{pipelineName}' "
      &"And DateSK ge {startdate} "
      &"And Workflow eq 'Build'"
      &")/groupby("
      &"(Test/ContainerName),"
      &"aggregate("
      &"ResultCount with sum as ResultCount, "
      &"ResultPassCount with sum as ResultPassCount, "
      &"ResultFailCount with sum as ResultFailCount, "
      &"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
      &"ResultNotImpactedCount with sum as ResultNotImpactedCount"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

測試擁有者篩選的測試摘要

若要檢視特定測試擁有者所擁有的測試管線測試摘要,請使用下列查詢。 若要建立報告,請執行下列額外步驟,以及本文稍後所定義的內容。

  • 展開 TestTest.TestOwner
  • 選取 Power BI 視覺效果交叉分析篩選器,並將欄位新增至交叉分析篩選器的欄位Test.TestOwner
  • 從交叉分析篩選器中選取測試擁有者,您需要查看結果摘要。

將下列 Power BI 查詢直接複製並貼到 [取得資料>空白查詢] 視窗中。 如需詳細資訊,請參閱 使用 OData 查詢的範例報表概觀

let
   Source = OData.Feed (
      "https://analytics.dev.azure.com/mseng/AzureDevOps/_odata/v4.0-preview/TestResultsDaily?"
      &"$apply=filter("
      &"Pipeline/PipelineName eq '{pipelineName}' "
      &"And DateSK ge {startdate} "
      &"And Workflow eq 'Build'"
      &")/groupby("
      &"(Test/TestOwner),"
      &"aggregate("
      &"ResultCount with sum as ResultCount, "
      &"ResultPassCount with sum as ResultPassCount, "
      &"ResultFailCount with sum as ResultFailCount, "
      &"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
      &"ResultNotImpactedCount with sum as ResultNotImpactedCount"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

替代字串和查詢明細

以您的值取代下列字串。 請勿在替代中包含括號 {} 。 例如,如果您的組織名稱為 「Fabrikam」 ,請將 取代 {organization}Fabrikam,而非 {Fabrikam}

 

  • {organization} - 您的組織名稱。
  • {project} - 您的小組項目名稱。
  • {pipelinename} - 您的管線名稱。 範例:Fabrikam hourly build pipeline
  • {startdate} - 開始報表的日期。 您可以使用 YYYYMMDD 格式輸入日期。 例如, 20220815 2022 年 8 月 15 日。

查詢明細

下表描述查詢的每個部分。

查詢元件

說明

$apply=filter(

Start filter() 子句。

Pipeline/PipelineName eq '{pipelineName}'

傳回指定管線的測試回合。

and CompletedOn/Date ge {startdate}

傳回指定日期或之後的測試回合。

and Workflow eq 'Build'and Workflow eq 'Release'

僅針對使用 BuildRelease 工作流程指定的管線傳回測試回合。

)

Close filter() 子句。

aggregate(

aggregate針對符合篩選準則的所有測試回合啟動 子句。

ResultCount with sum as ResultCount,

將測試回合總數計算為 ResultCount

ResultPassCount with sum as ResultPassCount,

將透過的測試回合總數計算為 ResultPassCount

ResultFailCount with sum as ResultFailCount

將失敗的測試回合總數計算為 ResultFailCount

ResultNotExecutedCount with sum as ResultNotExecutedCount,

將未執行的測試回合總數計算為 ResultNotExecutedCount

ResultNotImpactedCount with sum as ResultNotImpactedCount

將未受影響的測試回合總數計算為 ResultNotImpactedCount

)

aggregate()關閉 子句。

(選擇性)重新命名查詢

您可以將預設查詢標籤 Query1 重新命名為更有意義的專案。 只要從 [ 查詢設定 ] 窗格輸入新名稱即可。

Power BI 查詢功能表選項、重新命名查詢的螢幕快照。

(選擇性)重新命名數據行欄位

您可以重新命名資料列欄位。 例如,您可以將資料列 Pipeline.PipelineName 重新命名為 Pipeline Name,或 TotalCount 重新命名為 Total Count。 若要瞭解如何,請參閱 重新命名數據行欄位

關閉查詢並套用您的變更

完成所有數據轉換之後,請從 [常用] 功能表選擇 [關閉及套用],以儲存查詢並返回 Power BI 中的 [報表] 索引卷標。

Power Query 編輯器 [關閉並套用] 選項的螢幕快照。

建立環圈圖報表

  1. 在 Power BI 的 [視覺效果],選擇環圈報表。

    [測試摘要] 報表的視覺效果字段選取項目螢幕快照。

  2. 依指示的順序,將下列字段新增至 [值]。 以滑鼠右鍵按下每個字段,並確定 已選取 [總和 ]。

    • ResultPassCount
    • ResultFailCount
    • ResultNotExecutedCount
    • ResultNotImpactedCount

您的報表看起來應該類似下圖。

範例測試摘要環圈報表的螢幕快照。