管理片狀測試
Azure DevOps Services
開發人員的生產力依賴測試的能力,以及時且可靠的方式尋找開發中程式代碼或更新的實際問題。 Flaky 測試提供尋找實際問題的障礙,因為失敗通常與所測試的變更無關。 浮點測試是一項測試,可提供不同的結果,例如通過或失敗,即使原始程式碼或執行環境中沒有任何變更也一樣。 Flaky 測試也會影響出貨程式代碼的品質。
注意
此功能僅適用於 Azure DevOps Services。 一般而言,雲端服務會先引進新功能,然後在下一個主要版本或 Azure DevOps Server 的更新中提供內部部署。 如需詳細資訊,請參閱 Azure DevOps 功能時程表。
在產品中引進浮點測試管理的目標是減少因測試不力而造成開發人員的痛苦,並迎合整個工作流程。 Flaky 測試管理提供下列優點。
偵測 - 使用重新執行或擴充性自動偵測浮點測試,以插入您自己的自定義偵測方法
管理 flakiness - 一旦測試標示為浮點,該分支的所有管線都可以使用數據
報告不限度測試 - 如果您想要防止因鬆動測試 所造成的建置失敗,或只針對疑難解答使用 flaky 標籤,可以選擇是否能夠選擇
解決 方式 - 根據您的分析,手動建立錯誤或手動標記和取消標記測試
關閉迴圈 - 因錯誤解析/手動輸入而重設浮點測試
啟用浮點測試管理
若要設定浮點測試管理,請選擇 [項目設定],然後在 [管線] 區段中選取 [測試管理]。
將 [開啟/關閉] 按鈕滑至 [開啟]。
所有項目的預設設定是使用浮點測試進行疑難解答。
不穩定測試偵測
Flaky 測試管理支援系統和自定義偵測。
系統偵測:產品內部的浮點偵測會使用測試重新執行數據。 偵測是透過 VSTest 工作 重新執行失敗的測試功能,或重試管線中的階段。 您可以在項目中選取想要偵測不力測試的特定管線。
注意
一旦測試標示為浮點,該分支的所有管線都會提供數據,以協助針對每個管線進行疑難解答。
自定義偵測:您可以將自己的浮點偵測機制與 Azure Pipelines 整合,並使用報告功能。 使用自定義偵測時,您必須更新片狀測試的測試結果元數據。 如需詳細資訊,請參閱 測試結果、結果元數據 - 更新 REST API。
Flaky 測試選項
Flaky 測試選項會指定測試報告以及解析功能中如何提供浮點測試,如下列各節所述。
Flaky 測試管理和報告
在 [Flaky 測試選項] 下的 [測試管理] 頁面上,您可以設定測試摘要報表中如何包含浮點測試的選項。 測試結果中提供通過和失敗測試的 Flaky 測試數據。 Flaky 標籤可協助您識別浮點測試。 根據預設,測試摘要會包含在測試摘要中。 不過,如果您想要確保不讓管線失敗,您可以選擇不要將它們包含在測試摘要中,並隱藏測試失敗。 此選項可確保從通過百分比中移除不合格測試(已通過和失敗),並顯示在未回報的測試中,如下列螢幕快照所示。
注意
[測試摘要] 報表只會更新 Visual Studio 測試工作 和 [發佈測試結果] 工作。 您可能需要新增自定義腳本,以隱藏其他案例的不完全測試失敗。
標示為浮點測試
您可以選擇 Flaky (或 UnFlaky,視測試是否已標示為 flaky 而定,您可以根據測試是否已經標示為 flaky 來標示或取消標記測試。
當測試在管線中標示為浮點或不平移時,目前管線中不會進行任何變更。 只有在該測試的未來執行時,才會評估變更的浮點設定。 標示為 flaky 的測試在使用者介面中具有標示的浮點標記。
說明與支援
- 請參閱我們的 疑難解答 頁面
- 取得 Stack Overflow 的建議,並透過 開發人員社群 取得支援