檢閱測試結果
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
您可以設定自動化測試,以作為各種 語言組建或發行的一部分執行。 測試報告提供有效且一致的方式來檢視使用不同的測試架構所執行的測試結果,以測量管線品質、檢閱可追蹤性、疑難解答失敗,以及驅動失敗擁有權。 此外,它也提供下列各節所探索的許多進階報告功能。
您也可以使用 Analytics Service 對測試結果執行更深入的分析。 如需搭配建置和部署管線使用此範例,請參閱 分析測試結果。
閱讀詞彙以瞭解測試報告術語。
已發佈的測試結果可以在組建或發行摘要的 [測試] 索引標籤中檢視。
[測試] 索引標籤中的 Surface 測試結果
您可以使用下列其中一個選項,在 [測試] 索引標籤中顯示測試結果:
自動推斷測試結果。 根據預設,您的管線可以自動推斷幾個熱門測試執行器的測試輸出。 剖析建置作業期間產生的錯誤記錄,然後檢查測試失敗的簽章。 目前,Azure DevOps 支援下列語言和測試執行器,以自動推斷測試結果:
JavaScript - Mocha、Jest 和 Jasmine
Python- Unittest
注意
此推斷的測試報告是有限的體驗。 這裡沒有提供完整格式測試報告中的某些功能(更多詳細數據)。 建議您發佈完整格式的測試報告,以取得管線中的完整測試和深入解析體驗。 另請參閱:
測試執行工作。 內建的測試執行工作,例如可自動將測試結果發佈至管線的Visual Studio測試,或Ant、Maven、Gulp、Grunt和 Xcode 等其他專案,提供這項功能做為工作內的選項。
發佈測試結果工作。 使用您選擇的執行器執行測試時,將測試結果發佈至 Azure Pipelines 或 TFS 的工作,而且任何支援的測試結果格式都可以使用。
API(s). 使用 測試管理 API 直接發佈的測試結果。
[測試] 索引標籤以外的 Surface 測試資訊
[測試] 索引標籤提供測試執行的詳細摘要。 這有助於追蹤管線的品質,以及針對失敗進行疑難解答。 Azure DevOps 也提供其他方法來呈現測試資訊:
測試分析 提供在一段時間內測量測試結果的豐富見解。 它可提供熱門失敗測試等數據,以協助識別測試中有問題的區域。
在組建中檢視測試結果
建置摘要會提供組建中執行之重要步驟的時程表檢視。 如果測試已執行並回報為組建的一部分,則時間軸檢視中會出現測試里程碑。 測試里程碑會提供測試結果的摘要,做為通過百分比的量值,以及這些失敗和中止的指標。
在版本中檢視測試結果
在管線檢視中,您可以看到所有階段和相關聯的測試。 檢視會提供測試結果的摘要,做為通過百分比的量值,以及這些失敗和中止的指標。 這些指標與在建置時程表檢視中相同,在建置和發行之間提供一致的體驗。
[測試] 索引標籤
組建和發行摘要都會提供測試執行的詳細數據。 選擇 [測試摘要] 以檢視 [測試] 索引標籤中的詳細數據。此頁面有下列各節
摘要:提供測試執行的關鍵量化計量,例如測試計數總計、失敗的測試、通過百分比等等。 它也會提供與先前執行相比之變更的差異指標。
結果:列出執行的所有測試,並報告為目前組建或發行的一部分。 默認檢視只會顯示失敗和中止的測試,以便專注於需要注意的測試。 不過,您可以使用提供的篩選來選擇其他結果。
詳細數據:您可以排序、分組、搜尋和篩選的測試清單,以尋找您需要的測試結果。
選取任何測試回合或結果,即可檢視詳細數據窗格,以顯示疑難解答所需的其他資訊,例如錯誤訊息、堆棧追蹤、附件、工作專案、歷程記錄趨勢等等。
提示
如果您使用 Visual Studio 測試工作來執行測試,則從測試記錄的診斷輸出(使用任何 Console.WriteLine、Trace.WriteLine 或 TestContext.WriteLine 方法),將會顯示為失敗測試的附件。
[測試] 索引標籤的下列功能有助於改善生產力和疑難解答體驗。
篩選大型測試結果
經過一段時間后,測試會累算,而且對於大型應用程式而言,可以輕鬆地成長為數以萬計的測試。 對於具有許多測試的這些應用程式,很難瀏覽結果,以識別測試失敗、建立根本原因,或取得問題的擁有權。 篩選可讓您輕鬆地快速流覽至您感興趣的測試結果。 您可以篩選 測試名稱、 結果 (失敗、通過等等)、 測試檔案(保存測試的檔案 )和 擁有者 (適用於測試檔案)。 所有篩選準則在本質上都是累計的。
此外,使用多個群組選項,例如測試回合、測試檔案、優先順序、需求等等,您可以依照需求組織結果檢視。
使用 Bug 測試債務管理
若要管理失敗或長時間執行測試的測試債務,您可以建立 Bug 或將數據新增至現有的 Bug,以及所有檢視工作專案索引卷標中的所有相關聯工作專案。
沈浸式疑難解答體驗
錯誤訊息和堆棧追蹤本質上很冗長,而且需要足夠的房地產,才能在疑難解答期間檢視詳細數據。 若要提供沉浸式疑難解答體驗, [詳細 數據] 檢視可以展開為完整頁面檢視,同時仍能夠在內容中執行必要的作業,例如錯誤建立或所選測試結果的需求關聯。
針對測試失敗的數據進行疑難解答
針對測試失敗,錯誤訊息和堆疊追蹤可用於疑難解答。 您也可以在 [附件] 索引標籤中 檢視與測試失敗相關聯的所有附件 。
測試債務管理
您可以建立或新增至現有的 Bug,以管理失敗或長時間執行測試的測試債務。 [工作專案] 索引標籤會詳細說明與測試相關聯的所有 Bug 和需求,以協助您分析需求影響,以及哪些人正在處理 Bug。
使用歷程記錄數據測試趨勢
測試執行的歷程記錄可以提供有意義的測試可靠性或效能見解。 針對失敗進行疑難解答時,瞭解過去測試的執行方式十分有價值。 [測試] 索引標籤會在內容中提供測試結果的測試歷程記錄。 測試歷程記錄資訊會以漸進方式公開,從目前的組建管線開始,分別向其他分支或目前階段公開至其他階段,以便建置和發行。
檢視進行中的測試執行
整合和功能測試等測試可以長時間執行。 因此,請務必隨時查看測試執行的目前或近乎實時狀態。 即使是測試快速執行的情況,也有助於儘早瞭解相關測試結果的狀態:特別是在發生失敗時。 進行中檢視不需要等候測試執行完成。 執行進行時,結果幾乎即時可供使用,協助您更快速地採取動作。 您可以偵錯失敗、提出 Bug 或中止管線。
注意
此功能目前適用於使用 Multi Agent 作業中的 Visual Studio 測試工作來建置和發行。 未來版本將可供單一代理程式作業使用。
下列範例顯示 發行中的進行 中測試摘要,報告給定時間點的測試計數和測試失敗總數。 測試失敗可用於疑難解答、建立 Bug,或採取任何其他適當的動作。
檢視摘要測試結果
在測試執行期間,測試可能會繁衍多個實例或參與整體結果的測試。 有些範例是重新執行的測試、由其他測試排序組合(已排序的測試)或以輸入參數(數據驅動測試)為基礎的不同實例的測試所組成。
由於這些測試相關,它們必須與衍生自個別實例或測試的整體結果一起回報。 這些測試結果會回報為 [測試] 索引標籤中的摘要測試結果:
重新執行失敗的測試:可在最新版的 Visual Studio測試工作中,重新執行失敗的測試 。 在重新執行期間,可以針對失敗的測試進行多次嘗試,而且由於測試的非決定性行為,每個失敗都有不同的根本原因。 測試報告會針對重新執行的所有嘗試,以及整體測試結果做為摘要單元,提供合併檢視。 測試 管理 API 現在支援發佈和查詢摘要測試結果的能力。
數據驅動測試:類似於重新執行失敗的測試,數據驅動測試的所有反覆專案都會在摘要檢視中報告該測試。 摘要檢視也適用於已排序的測試(
.orderedtest
在 Visual Studio 中)。
注意
測試摘要區段中的計量,例如測試總數、通過、失敗或其他計量,是使用摘要測試結果的根層級來計算。
檢視中止的測試
測試執行可能會因為數個原因而中止,例如測試程式代碼錯誤、測試來源中的錯誤或環境問題。 無論中止的原因為何,請務必能夠診斷行為並找出根本原因。 中止的測試與測試回合可以在 [測試] 索引標籤中檢視已完成的執行。
注意
此功能目前適用於建置和發行,使用 Multi Agent 作業中的 Visual Studio 測試工作,或使用測試管理 API 發佈測試結果。 未來版本將可供單一代理程式作業使用。
自動推斷測試結果
Azure DevOps 可以針對一些支持的測試架構,自動推斷管線中執行的測試輸出。 這些自動推斷的測試報告不需要您管線的特定設定,而且是開始使用Test Reporting的零努力方式。
請參閱自動推斷測試結果的執行器清單。
由於這類推斷的報表中只有有限的測試元數據存在,因此其特性和功能有限。 下列功能不適用於推斷的測試報告:
- 依測試檔案、擁有者、優先順序和其他欄位分組測試結果
- 搜尋並篩選測試結果
- 檢查通過測試的詳細數據
- 預覽 Web UI 本身測試期間所產生的任何附件
- 將測試失敗與新的 Bug 產生關聯,或查看此失敗的相關工作項目清單
- 請參閱建置內部建 置分析,以在管線中進行測試
注意
莫查等一些跑步者有多個內建控制台記者,例如 點矩陣 和 進度列。 如果您已為測試執行器設定非預設的控制台輸出,或是使用自定義記者,Azure DevOps 將無法推斷測試結果。 它只能推斷預設記者的結果。
相關文章
說明與支援
- 請參閱我們的 疑難解答 頁面
- 取得 Stack Overflow 的建議,並透過 開發人員社群 取得支援