手動測試執行趨勢範例報告
Azure DevOps Services |Azure DevOps Server 2022 |Azure DevOps Server 2020
本文說明如何在Power BI中取得一或多個測試計劃的執行狀態。 產生的報表類似於下圖和進度報表的結果趨勢圖表。
報表會顯示趨勢圖,摘要說明在指定時段內執行之測試計劃的數目和結果狀態。
- 通過:通過的測試案例數目。
- 失敗:測試案例失敗的數目。
- NotApplicable:測試案例數目
- 已封鎖:封鎖的測試案例數目無法執行。
- NotExecuted:已定義但未執行的測試案例數目。
報表回答的問題
此報告可藉由回答下列問題,協助您追蹤小組在產品或服務計劃測試方面的進度:
- 測試完成多少?
- 測試通過、失敗或遭到封鎖的目前狀態為何?
- 通過多少個測試,以及趨勢對軟體品質有何指示?
- 有多少測試失敗?
- 已封鎖多少個測試,以及趨勢所指出的內容為何?
狀況良好的測試執行趨勢報告會顯示執行和通過的測試計劃穩定進度。 在理想情況下,報表會顯示特定計劃之測試案例的相對一般數目。 隨著開發周期的推進,通過測試案例的數目應該增加,其他州的測試案例數目應該下降。
重要
Azure DevOps Services 和 Azure DevOps Server 2020 和更新版本的 Power BI 整合 和存取 Analytics Service 的 OData 摘要 已正式推出。 本文中提供的範例查詢僅適用於 Azure DevOps Server 2020 和更新版本,且相依於 v3.0-preview 或更新版本。 我們鼓勵您使用這些查詢並提供意見反應。
必要條件
- 存取:至少是具有基本存取權的項目成員。
- 許可權: 根據預設,項目成員具有查詢分析及建立檢視的許可權。
- 如需有關服務與功能啟用和一般數據追蹤活動之其他必要條件的詳細資訊,請參閱 存取分析的許可權和必要條件。
注意
本文假設您已閱讀 使用 OData 查詢 的範例報表概觀,並具備 Power BI 的基本瞭解。
若要讓報表產生有用的數據,小組必須執行下列活動來管理測試計劃:
定義測試計劃、測試套件和測試案例。 指定其狀態。 若要讓 Test Suite 執行,它必須處於 [進行中] 狀態。 若要讓測試案例執行,它必須處於就緒狀態。 如需詳細資訊,請參閱 建立測試計劃和測試套件 和 建立手動測試案例。
執行手動測試並驗證結果。 將測試案例中每個驗證步驟的結果標示為通過或失敗。 如需詳細資訊,請參閱 執行手動測試。
注意
如果測試人員是驗證測試步驟,則必須標示狀態為測試步驟的測試步驟。 測試的整體結果會反映已標記之所有測試步驟的狀態。 因此,如果任何測試步驟標示為失敗或未標示,測試將會有失敗的狀態。
範例查詢
您可以使用實體集的 TestPointHistorySnapshot
下列查詢來建立不同的但類似的測試計劃執行趨勢報表。
注意
若要判斷篩選或報表用途的可用屬性,請參閱 Test Plans Analytics 的元數據參考。 您可以使用的 或 NavigationPropertyBinding Path
值EntitySet
底下EntityType
的任何Property
值來篩選查詢或傳回屬性。 每個 EntitySet
對應至 EntityType
。 如需每個值之數據類型的詳細資訊,請檢閱針對對應 EntityType
提供的元數據。
將下列 Power BI 查詢直接複製並貼到 [取得資料>空白查詢] 視窗中。 如需詳細資訊,請參閱 使用 OData 查詢的範例報表概觀。
let
Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/TestPointHistorySnapshot?"
&"$apply=filter((TestSuite/TestPlanTitle eq '{testPlanTitle}') and (DateSK ge {startDate} and DateSK le {endDate}))"
&"/groupby("
&"(DateSK),"
&"aggregate("
&"$count as TotalCount,"
&"cast(ResultOutcome eq 'Passed', Edm.Int32) with sum as Passed,"
&"cast(ResultOutcome eq 'Failed', Edm.Int32) with sum as Failed,"
&"cast(ResultOutcome eq 'Blocked', Edm.Int32) with sum as Blocked,"
&"cast(ResultOutcome eq 'NotApplicable', Edm.Int32) with sum as NotApplicable,"
&"cast(ResultOutcome eq 'None', Edm.Int32) with sum as NotExecuted,"
&"cast(ResultOutcome ne 'None', Edm.Int32) with sum as Executed
)
)", null, [Implementation="2.0"])
in
Source
替代字串和查詢明細
以您的值取代下列字串。 請勿在替代中包含括號 {} 。 例如,如果您的組織名稱為 「Fabrikam」 ,請將 取代 {organization}
為 Fabrikam
,而非 {Fabrikam}
。
{organization}
- 您的組織名稱{project}
- 針對跨項目查詢,您的小組專案名稱或完全省略 “/{project}”{testPlanTitle}
- 測試計劃的標題。 範例:Fabrikam test plan
。{startDate}
和{endDate}
- 感興趣的日期範圍。 您可以使用 YYYYMMDD 格式輸入日期。 例如,20220815
2022 年 8 月 15 日。
查詢明細
下表描述查詢的每個部分。
查詢元件
說明
filter((TestSuite/TestPlanTitle eq '{testPlanTitle}'))
只傳回所選測試計劃的數據。 您可以使用 或 TestSuite/TestPlanTitle eq '{testPlanTitle2}'))
等filter((TestSuite/TestPlanTitle eq '{testPlanTitle1}'
子句來新增多個方案。 您也可以在這裡套用任何其他與測試套件和測試組態相關的篩選。
and (DateSK ge {startDate} and DateSK le {endDate})
感興趣的日期範圍。 您可以以 YYYYMMDD
格式輸入日期。
/groupby((DateSK)
將數據分組為相同日期的量化。 它會在指定的日期範圍中每天產生一組值。
/aggregate($count as TotalCount,
匯總篩選測試點的數據,其計數為 TotalCount
。
cast(LastResultOutcome eq 'Passed', Edm.Int32) with sum as Passed,
在匯總時,類型轉換測試點具有最新的執行結果「傳遞」到1,並將其加總為 Passed
計量。
(選擇性)重新命名查詢
您可以將預設查詢標籤 Query1 重新命名為更有意義的專案。 只要從 [ 查詢設定 ] 窗格輸入新名稱即可。
變更數據行數據類型
從 Power Query 編輯器 中,選取數據TotalCount
行和所有其他數據行,然後從 [轉換] 功能選取 [數據類型],然後選擇 [整數]。 如需變更數據類型的詳細資訊,請參閱 轉換分析數據以產生Power BI報表、轉換資料行數據類型。
(選擇性)重新命名數據行欄位
您可以重新命名資料列欄位。 例如,您可以將資料列 NotApplicable
重新命名為 Not Applicable
,或 TotalCount
重新命名為 Total Count
。 若要瞭解如何,請參閱 重新命名數據行欄位。
關閉查詢並套用您的變更
完成所有數據轉換之後,請從 [常用] 功能表選擇 [關閉及套用],以儲存查詢並返回 Power BI 中的 [報表] 索引卷標。
建立堆疊分區圖報表
在 Power BI 的 [視覺效果] 下,選擇 [堆棧分區圖] 報表。
將 DateSK 拖放到 X 軸上。
拖放 [已傳遞]、[失敗]、[已封鎖]、[不可套用] 和 [未執行] 到 Y 軸。
您的報表看起來應該類似下圖。