Azure DevOps 服務 |Azure DevOps Server |Azure DevOps Server 2022
測試產物如測試計畫、測試套件與測試案例,都是 Azure DevOps 的工作項目。 在 Azure DevOps Server 中,刪除這些項目是永久性的,但在 Azure DevOps Services 中則可復原。 了解刪除流程和恢復選項有助於你安全刪除。
Tip
你可以在本文的後面部分使用 AI 來協助此任務,或參考 啟用 Azure DevOps MCP Server 的 AI 協助功能 來開始。
了解刪除行為
刪除行為喺 Azure DevOps Services 同 Azure DevOps Server 之間有差異。 了解每個平台如何處理刪除以及可用的恢復選項,能讓你更有信心地刪除。
Azure DevOps Services 刪除模型
Azure DevOps Services 支援軟刪除模型。 當你刪除測試計畫或測試套件時,它們會進入 14 天的恢復期,然後才會永久刪除。
當你刪除測試產物時會發生什麼事
從 TCM 資料存放區移除
- 已刪除的測試成品會從測試案例管理 (TCM) 資料存放區中移除。
- 與測試工件相關聯的相關工作項目已被刪除。
刪除子專案
- 背景程序會啟動,從 TCM 資料存放區及基礎工作項目中刪除所有子項目。
- 依刪除文物的數量,此過程可能需要幾分鐘的時間。
軟刪除
- 工作項目追蹤資料庫和 TCM 資料庫中的所有資訊都會被置於軟刪除狀態,你可以在 14 天內還原。
永久刪除
- 無論如何都無法重新啟用或還原已刪除的資料。
若要在 14 天的虛刪除期間內還原已刪除的測試計畫或測試套件:
- 執行 List API 以取得您想要還原的測試計劃/測試套件。
- 如果 List API 傳回的回應中包含要還原的測試計畫或測試套件,請針對 Test Plan/Test Suite 執行 PATCH API 以還原它們。
- 如果 List API 沒有回傳你想還原的測試計畫或測試套件,該計畫將永久從系統中刪除,無法還原。
還原已刪除的測試計畫或套件
在為期 14 天的軟刪除階段,您可以恢復已刪除的測試計畫與套件:
- 執行 List API 取得你想還原的測試計畫/測試套件。
- 如果 List API 傳回包含要還原的測試計畫或測試套件的回應,請針對 Test Plan/Test Suite 執行 PATCH API 來還原它們。
- 如果 List API 沒有回傳你想還原的測試計畫或套件,該計畫將永久刪除且無法復原。
重要限制
- 刪除後,測試計畫與測試套件會處於軟刪除狀態,持續 14 天。 過了這段時間後,這些帳號會被永久刪除,無法恢復。
- 當您還原測試計畫或套件時,所有子項目(測試套件、測試案例)也都會一併還原。
- 不支援還原與測試計畫和套件相關的測試運行。
- 透過 API 或非入口網站方法刪除的測試案例會永久刪除,無法還原。
Azure DevOps Server 刪除模型
重要
永久且不可逆刪除:Azure DevOps Server 僅支援永久刪除測試產出物,包括測試計畫、測試套件、測試案例、共享步驟及共享參數。 無法還原已刪除的工件,所有相關聯的子項目,例如測試結果,也將被移除。 此外,也不支援批次刪除測試產物。
刪除測試遺跡前,請先備份必要的資訊,因為這個動作無法撤銷。
當你刪除測試產物時會發生什麼事
從 TCM 資料存放區移除:
- 已刪除的測試成品會從測試案例管理 (TCM) 資料存放區中移除。
- 與測試工件相關聯的相關工作項目已被刪除。
刪除子項目:
- 背景程序會啟動,從 TCM 資料存放區及基礎工作項目中刪除所有子項目。
- 依刪除文物的數量,此過程可能需要幾分鐘的時間。
永久刪除:
- 此過程會永久刪除工作項目追蹤資料庫與 TCM 資料庫中的所有資訊。
- 無論如何都無法重新啟用或還原已刪除的資料。
必要條件
| 類別 | 要求 |
|---|---|
| 存取層級 | Basic + 測試計畫或 Visual Studio Enterprise 用來管理或刪除測試產物。 擁有 Basic 權限的使用者只能刪除孤立的測試案例(即未連結到任何測試計畫或套件的測試案例)。 |
| 權限 — 測試運行 | 專案管理員群組的成員,或專案層級的 刪除測試執行 權限設為 允許。 |
| 權限 — 測試計畫與套件 | Project 管理員群組成員,或區域路徑節點層級的「管理測試計畫」或「管理測試套件」權限設為允許。 |
注意
如果你不是專案管理員,你需要同時擁有專案層級 的刪除測試執行 權限和相關的區域路徑節點層級權限。
Tip
不確定你有沒有正確的權限? 請參閱 「驗證刪除權限 」部分。
支援測試體驗的工作項目類型
下圖說明一組支持測試體驗並與 Microsoft Test Manager 協同運作的工作項目類型。 這些工作項目類型會使用顯示的連結類型連結在一起。
從入口網站或Microsoft測試管理員,您可以檢視測試套件所定義的測試案例,以及針對測試計劃定義哪些測試套件。 不過,這些物件不會透過連結類型彼此連線。 如需這些工作項目類型中使用的每個欄位定義,請參閱 根據組建和測試整合欄位查詢。
刪除測試成品
Warning
刪除測試構件後將無法復原。 在 Azure DevOps Services 中,你有 14 天的時間來恢復已刪除的測試計畫和測試套件。 喺 Azure DevOps Server 入面,刪除係即時同永久嘅。 在確認刪除前,請仔細確認你的選擇。
刪除測試案例
- 前往你想刪除的測試案例。
- 從動作選單中選擇 永久刪除 。
- 在出現的對話方塊中確認刪除。
注意
只有在您具備必要的權限和存取層級時,永久刪除選項才可使用。
刪除測試套件
- 進入你想刪除的測試套件。
- 從動作選單中選擇 永久刪除 。
- 在出現的對話方塊中確認刪除。
刪除測試計劃
選項A:從測試計畫檢視中刪除
- 切換到你想刪除的測試計畫。
- 從動作選單中選擇 永久刪除 。
- 在出現的對話方塊中確認刪除。
選項 B:從測試計畫中心刪除
- 開放 測試計畫。
- 在清單中找到你想刪除的測試計畫。
- 右鍵點擊測試計畫(或選擇計畫旁 的··· 選單圖示)。
- 選擇 刪除。
- 確認刪除。
刪除共用步驟或共享參數
- 打開你想刪除的共享步驟或共享參數。
- 選擇 「顯示參考文獻」 以查看所有連結至此項目的測試案例。
- 對於每個測試案例,打開它並移除連結到共享步驟或參數。
- 移除所有參考後,回到共用步驟或參數並選擇 永久刪除。
- 確認刪除。
注意
如果永久 刪除 選項被關閉,請確認你已移除所有參考資料。 系統會阻止删除測試案例仍在參考的共用步驟或參數。
驗證刪除權限
在嘗試刪除測試產物之前,請確認你擁有所需的權限:
- 移至 專案設定>[許可權]。
- 搜尋你的使用者帳號或團隊。
- 請確認以下權限是否被設定為 允許:
- 刪除測試執行( 用於刪除測試結果)
- 管理測試計畫 或 管理測試套件 (用於刪除測試計畫與套件)
- 請確認你的存取等級是否為 Basic + Test Plan 或以上。
- 如果權限不正確,請聯絡你的專案管理員。
欲了解更多資訊,請參閱 管理測試工件權限。
疑難排解測試成品刪除問題
「永久刪除」選項不出現
可能的原因:
- 你的存取等級比 Basic + Test Plans 還低。
- 你不具備此成品所需的權限。
- 你沒有這個地點的區域路徑權限。
解決方法:
- 檢查您的存取權限:前往 個人資料>安全 頁面查看您目前的存取權限。
- 驗證您的權限:請參閱 「驗證刪除權限」。
- 如果你不是專案管理員,請你的管理員指派所需的權限。
刪除速度慢或逾時
可能的原因:
- 測試產物具有許多子項目(測試案例、測試套件、測試結果)。
- 背景作業仍在處理刪除作業。
- 網路連線問題
解決方法:
- 大型刪除作業可能需要幾分鐘。 讓背景作業有時間完成。
- 等待幾分鐘確認刪除後,重新整理頁面。
- 檢查你的網路連線並再試一次。
遺跡刪除後仍會出現(Azure DevOps Services)
可能的原因:
- 該成品處於軟刪除狀態(14 天的復原期限)。
解決方法:
- 在 Azure DevOps 服務中,刪除的測試計畫與測試套件在 14 天恢復期間仍可見於部分檢視中。
- 該神器在14天後永久刪除。
- 要在此視窗內還原該產出物,請參見上方介紹區段 的「還原已刪除的測試計畫或套件 」。
無法刪除共用的步驟或參數
可能的原因:
- 共享的步驟或參數仍保留來自測試案例的參考。
解決方法:
- 打開共享的步驟或參數。
- 選擇 「顯示參考資料」 以查看所有連結的測試案例。
- 打開每個測試案例並移除連結。
- 再試一次刪除。
更多資訊請參閱上方 刪除共享步驟或共享參數 。
透過 REST API 刪除測試產件
你也可以用 Azure DevOps REST API 程式化刪除測試產出物。 此方法適用於自動化、批量刪除或與 CI/CD 管線整合。
刪除測試案例
DELETE https://dev.azure.com/{organization}/{project}/_apis/test/testcase/{testCaseId}?api-version=7.1
Authentication: Basic [PAT or OAuth token]
刪除測試套件
DELETE https://dev.azure.com/{organization}/{project}/_apis/test/plans/{planId}/suites/{suiteId}?api-version=7.1
Authentication: Basic [PAT or OAuth token]
刪除測試計劃
DELETE https://dev.azure.com/{organization}/{project}/_apis/test/plans/{planId}?api-version=7.1
Authentication: Basic [PAT or OAuth token]
注意
- 將
{organization}、{project}、{planId}、{suiteId}和{testCaseId}替換為實際值。 - 使用 API 版本
7.1或更高版本。 請查看 REST API 版本管理 的最新版本。 - 在 Azure DevOps 服務中,你可以在 14 天軟刪除期間透過 API 還原已刪除的產物。
- 喺 Azure DevOps Server 入面,透過 API 刪除係永久嘅。
- 可使用 個人存取令牌(PAT) 或 OAuth 令牌進行認證。
完整 API 細節請參閱 測試計畫回收桶 API 參考。
用 AI 刪除測試產物
如果你為組織設定 Azure DevOps MCP 伺服器,你可以利用它利用自然語言大規模搜尋並刪除測試產出物。 此方法特別適用於大量刪除或難以手動執行的複雜查詢。
以下是自然語言查詢的常見模式:
| 任務 | 範例提示 |
|---|---|
| 刪除測試計劃 | Delete test plan <TestPlanName> in project <Contoso> |
| 尋找舊測試遺跡 | List all test plans in project <Contoso> that aren't updated in the last 6 months |
| 移除廢棄的測試套件 | Find all test suites in project <Contoso> that have no test runs in the last 90 days and delete them |
| 尋找重複的測試案例 | Identify duplicate test cases in test suite <SuiteName> that have the same title and steps |
| 依標籤批量刪除測試案例 | Delete all test cases marked with tag "deprecated" in project <Contoso> |
| 移除孤立的共用步驟 | Find shared steps in project <Contoso> that aren't referenced by any test cases |
| 驗證刪除影響 | Before I delete test plan <TestPlanName>, show me how many test cases, test suites, and test runs are associated with it |
| 刪除舊的測試結果 | Delete all test results older than 1 year from test plan <TestPlanName> |
| 計畫文物清理 | What test artifacts in project <Contoso> can I safely delete to clean up the test data |
注意
代理模式與 MCP 伺服器使用自然語言,因此您可以調整這些提示或提出後續問題以精煉結果。 在 Azure DevOps Server 中,測試的工件刪除是永久性的,無法恢復,所以請仔細確認你的選擇。