複製或複製測試計劃、測試套件和測試案例
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
數個工具支援測試專案的複製、複製或匯入作業,例如測試計劃、測試套件和測試案例。 測試案例描述執行測試及驗證功能實作或 Bug 修正所要採取的步驟。 測試套件會將測試案例,以及選擇性地將其他測試套件分組為特定順序。 測試計劃會定義要針對特定反覆專案或發行執行的測試套件集合。
每個測試案例都是設計來確認特定行為。 測試案例可能屬於一或多個測試套件,不過測試套件只能屬於一個測試計劃。
一般而言,您應該為每個主要專案里程碑建立測試計劃。 測試專案的複製、複製或匯入作業支援下列案例。
- 根據現有的測試計劃定義新短期衝刺或發行的測試計劃
- 將測試套件從一個測試計劃匯入至相同或不同專案中的另一個測試計劃
- 複製測試案例以用於不同的測試套件和測試計劃
- 跨專案共用測試物件
- 將測試物件從某個專案移至另一個專案,可能支援將項目合併成單一專案
如需詳細資訊,請參閱 測試物件和詞彙的概觀。
必要條件
存取層級:
- 基本 存取或更新版本,具有檢視對應區域路徑下工作項目的許可權。 如需詳細資訊,請參閱 將使用者新增至專案或小組。
- 基本 + 測試計劃 存取層級,以新增測試計劃和測試套件、刪除測試成品,以及定義測試組態。
- 或者,下列 其中一個 Visual Studio 訂用帳戶:
許可權: 若要新增或編輯測試相關成品:
- 編輯此節點中的工作專案許可權設定為 [在對應的區域路徑下允許],以新增或修改測試計劃、測試套件、測試案例或其他以測試為基礎的工作項目類型。
- 管理 [測試計劃] 權限設定為 [對應區域路徑] 下的 [允許],以修改測試計劃屬性,例如建置和測試設定。
- 管理測試套件許可權設定為 [在對應的區域路徑下允許]、建立和刪除測試套件、新增和移除測試套件中的測試案例、變更與測試套件相關聯的測試元件,以及修改測試套件階層 (移動測試套件)。
如需詳細資訊,請參閱 手動測試存取權和許可權。
使用 TCM 命令行工具
若要使用 TCM 命令列工具,您必須具備下列專案:
已安裝 Visual Studio 2017 Professional 或舊版。 您可以從命令提示字元與下列目錄存取 TCM:
%programfiles(x86)%\Microsoft Visual Studio\2017\Professional\Common7\IDE
%programfiles(x86)%\Microsoft Visual Studio\2017\Enterprise\Common7\IDE
%programfiles(x86)%\Microsoft Visual Studio 14.0\Common7\IDE
若要執行 TCM 命令,請視需要指定
/collection
和/teamproject
參數/login
。參數 描述 /收集 :CollectionURL
必要。 指定 Team 專案集合的 URI。 URI 格式如下所示:
- 針對 Azure DevOps Services:http://dev.azure.com/OrganizationName
- 針對 Azure DevOps Server:http://ServerName:Port/VirtualDirectoryName/CollectionName
。 如果沒有使用虛擬目錄,則 URI 的格式如下:http://ServerName:Port/CollectionName
/teamproject: project
必要。 包含您要複製或匯入自動化測試之測試物件的項目名稱。 /login: username,[password]
選擇性。 指定有效 Azure DevOps 使用者的名稱和密碼,以及有權執行命令的人員。 如果您的 Windows 認證沒有適當的許可權,或您使用基本身份驗證,或未連線到網域,請使用此選項。 您必須是想要存取的一或多個專案的有效成員,並根據您執行的命令擁有所需的許可權。 如需詳細資訊,請參閱 手動測試存取權和許可權。
您必須具有相同的存取層級,才能新增測試計劃和測試套件來複製或匯入測試物件。
支援的複製、複製和匯入工具
根據您使用的 Azure DevOps 版本,您可以使用下表所列的用戶端或工具來複製、複製或匯入測試計劃、測試套件或測試案例。
用戶端/工具
測試計劃
測試套件
測試案例
入口網站 (方格)
✔️ 複製並貼上
入口網站 (方格)
✔️ 複製並貼上
工作項目表單
✔️ 複製
TCM CLI 2
✔️ 克隆
✔️ 克隆
✔️ 自動匯入
注意
- 隨著 Azure DevOps Server 2020 的發行,Azure Test Plans 的入口網站已大幅更新。 已新增許多新功能以支援複製、複製、匯入和匯出。 如需概觀,請參閱 瀏覽測試計劃。
- 當您安裝 Visual Studio 2017 或舊版時,會安裝測試案例管理 (TCM) 命令行工具。 本文提供的範例會反映 Visual Studio 2017 版本可用的選項。 舊版可能支援較少的選項。 如需詳細資訊,請參閱 使用 TCM 命令行工具。
- 支援複製測試計劃和測試套件的 REST API 命令已新增 5.0 版,與 Azure DevOps 2019 相對應。
- Microsoft Test Manager (MTM) 在 2020 年 1 月已淘汰以搭配 Azure DevOps Services 使用,且不支援 Azure DevOps Server 2020 和更新版本。 Azure Test Plans 的目前版本支援 MTM 支援的所有功能等等。
- 當您安裝 Visual Studio 2017 或舊版時,測試案例管理 (TCM) 命令行工具會安裝。 本文提供的範例會反映 Visual Studio 2017 版本可用的選項。 舊版可能支援較少的選項。 如需詳細資訊,請參閱 使用 TCM 命令行工具。
列出測試計劃或測試套件
當您執行與測試計劃或測試套件相關的複製、複製或匯入作業時,必須能夠存取其唯一標識符。 此識別碼可讓您精確地以您想要使用的特定方案或套件為目標。 藉由瞭解指派的標識碼,您可以簡化測試程式,並確保正確復寫或傳輸與測試相關的數據。
執行下列步驟來產生測試計劃、測試套件或其他測試對象的清單。
- 從您的項目中選取 [面板>查詢]。
- 在查詢編輯器中輸入
Work Item Type=Test Plan
參數。 您可以列出針對小組項目定義的所有測試計劃。 - 在 [跨項目查詢] 複選框中輸入複選框。 查詢會列出針對所有項目定義的所有測試計劃。 如需詳細資訊,請參閱 定義工作項目查詢。
- 執行查詢。
提示
雖然測試計劃、測試套件和測試案例彼此相關,但您無法透過工作專案查詢來檢視關聯性。 連結類型不會連結測試計劃、測試套件和測試案例。 只有共用步驟和共用參數連結至測試案例。 此外,測試案例會連結到使用者劇本或他們測試的其他工作專案。
複製或複製測試計劃
當您為每個短期衝刺或發行建立新的測試計劃時,有用的方法是從先前的週期複製測試計劃。 透過最少的調整,複製的測試計劃就適合新週期。 這種做法可簡化規劃程式,並確保反覆項目之間的一致性。
當您需要將應用程式分支為兩個版本時,複製會特別有用。 複製之後,您可以針對每個版本獨立修改測試,而不會影響另一個版本。 這是管理測試工作的有效率方式,同時維持不同應用程式變體之間的區隔。
從項目選取 [測試計劃>測試計劃]。
選擇您想要從 Mine 或 All 頁面複製的測試計畫。
選取 [更多動作>複製測試計劃]。 這個選項可讓您在項目中複製或複製測試計劃。
指定新測試計劃的名稱,然後選取 計劃的區域路徑 和 反覆項目路徑 。
- 根據下列指引選擇一或另一個單選按鈕:
- 參考現有的測試案例:當您打算最終合併兩個分支時,請選擇此選項。 在此情況下,針對已實作和測試的功能,保留相同的需求。
- 重複現有的測試案例:當您想要個別維護新的測試案例時,請選擇此選項,請注意,新的測試案例將會連結到現有的需求。
如果您複製現有的測試案例,複製的測試案例會獲派 針對複製的測試計劃指定的區域路徑 和 反覆項目路徑 。
如需詳細資訊,請參閱 關於區域和反覆專案 (sprint) 路徑。
頁面會重新整理以顯示新複製的測試計劃。
- 根據下列指引選擇一或另一個單選按鈕:
更新您複製的任何 查詢型套件 ,以使用新的區域和反覆項目路徑。
如果您複製自動化測試案例,請在目的地測試計劃中指定組建。
注意
此功能不支援透過 Azure DevOps Server 2019 和舊版的入口網站。 複製測試計劃的功能需要 Azure DevOps Server 2020 或更新版本。
匯入或複製測試套件
當您為新的短期衝刺建立測試計劃時,通常想要重複先前短期衝刺中的一些測試,以確保您已實作的功能仍然有效。
注意
- 當您將測試套件匯入 (Web) 或複製 (TCM) 至新專案時,新套件會包含來源套件中所有測試案例的複本。 不過,它不會保留任何歷程記錄數據,例如先前的測試回合、相關的 Bug、舊的結果。
- 測試案例所參考的共用步驟也會在目的地項目中複製和建立。
- 您無法將測試案例從和 複製到相同的測試計劃,甚至無法複製到不同的套件。 若要完成此案例,您必須先將測試案例移至不同的暫存測試計劃。 然後,使用暫存測試計劃作為來源計劃,並將測試案例複製到來源測試計劃,方法是將標識碼放入目的地測試計劃的位置。 在此程式中,測試案例中存在的共用步驟也會重複。
當您使用 Azure Test Plans 時,可以將測試套件從某個測試計劃匯入至目前專案中的另一個測試計劃。 測試計劃是否在相同的專案中並不重要。 此程式牽涉到複製或複製測試套件,進而建立新的測試套件。 此外,任何子測試套件也會重複。 測試套件所參考的測試案例不會重複;相反地,它們會由複製的測試套件參考。
您可以使用 tcm suites /list
來列出針對項目定義的所有測試套件。
若要在不同的套件和方案中使用相同的測試案例,請使用 方格 檢視來複製和貼上測試案例。
選取 [測試計劃>測試計劃]。
選擇要從 Mine 或 All 頁面匯入測試套件的測試計劃。
選取 [更多動作>複製測試計劃]。 這個選項可讓您在項目中複製或複製測試計劃。
在開啟的對話框中,如果測試計劃位於不同的專案中,請選取專案。 否則,請輸入 [測試計劃名稱] 或 [標識符] 和 [測試套件名稱] 或 [標識符]。 您也可以從下拉功能表中選取名稱或識別碼。
建立 匯入。 您一次只能從測試計劃匯入一個套件。
下列訊息會顯示:
匯入作業完成時,會顯示下列訊息。 選取 [ 重新整理 ] 以重新整理瀏覽器。
新加入的測試套件接著會顯示。
注意
此功能不支援透過 Azure DevOps Server 2019 和舊版的入口網站。 匯入測試套件的功能需要 Azure DevOps Server 2020 或更新版本。
複製測試案例
您可以從入口網站將測試案例從專案或另一個專案內複製到測試套件,也可以使用 [方格 ] 檢視, 將測試案例 從某個套件複製並貼到另一個套件。 您也可以選擇大量匯入及匯出測試案例。
您可以彈性地從專案內或組織或集合內的另一個專案複製測試案例。 此外,您可以選擇在複製程式期間包含所有連結和附件。
選取 [測試計劃>測試計劃]。
選擇 [測試計劃],其中包含您想要從 Mine 或 All 頁面複製的一或多個測試案例。
選取包含您想要複製之一或多個測試案例的測試套件。
從 [ 定義 ] 頁面中,選取您要複製之所有測試案例的複選框。
選取 [更多動作>複製測試案例]。
從下拉功能表中選擇 [專案],然後輸入 [測試計劃名稱] 或 [標識符] 和 [測試套件名稱] 或 [標識符]。 您也可以從下拉功能表中選取名稱或識別碼。
(選擇性)選取 [包含現有連結] 和 [包含現有附件] 複選框。
建立 複本。
背景複製作業取決於所選測試案例的數量和複雜度。 完成之後,系統會將通知傳送給您,以確認作業成功,以及複製測試案例所在的測試套件連結。
複製與貼上測試案例 (方格檢視)
當您管理測試案例時,複製和貼上可作為在各種套件和方案之間重複使用相同測試的寶貴技術。 例如,假設您有完整的測試套件,而您想要在另一個套件內建立更專注的測試子集。 [ 定義>方格 ] 檢視同時支援編輯測試案例,並將其複製到不同的測試套件。 如需詳細資訊,請參閱 建立測試案例、使用方格檢視來編輯測試案例。
您可以從 Internet Explorer、Microsoft Edge 或 Chrome 瀏覽器,將測試案例從一個測試計劃和測試套件的 Grid 檢視複製到另一個測試計劃和測試套件。
從 [ 測試計劃>測試計劃] 頁面中,選擇包含您想要複製之一或多個測試案例的測試套件。 在 [定義] 索引標籤內,選取 [方格檢視]。
反白顯示您想要複製的數據列,然後輸入 CTRL+C。
從相同或不同的方案選取不同的測試套件,然後貼上 CTRL+V。 如果您未選取不同的套件,則貼上時不會發生任何動作,因為每個套件只能有一個測試案例的參考。
選擇 [ 儲存測試案例]。
新的測試案例會儲存並指派新的標識碼。
大容量導入或匯出測試案例
您可以從入口網站執行測試案例的大容量導入或匯出,或從/匯出至測試套件。 測試案例是在逗號分隔值 (CSV) 檔案中定義。
匯出測試案例
從 [ 測試計劃>測試計劃 ] 頁面,選擇測試計劃,其中包含您要導出的測試案例的測試套件。
選擇性。 選擇 [資料行] 選項 以新增要包含在下載檔中的欄位。
若要匯出測試套件的所有測試案例,請選擇 [將測試案例匯出至 CSV]。
若要匯出測試套件的測試案例子集,請選取要導出的測試案例、選擇 [更多選項],然後選取 [將測試案例匯出至 CSV]。
匯出的 CSV 檔案會出現在 [ 下載] 資料夾中。
匯入測試案例
從 [測試計劃測試計劃>] 中,選擇測試計劃,其中包含您要匯入測試案例的測試套件。
選擇要從開啟的對話框匯入的檔案,然後選取 [ 匯入]。
選取確認。 如果您指定已在測試套件中定義的測試案例,某些元素可能會在匯入期間過度寫入。
匯入自動化測試案例 (TCM)
若要將自動化測試案例匯入至測試套件,請使用 tcm testcase /import
。 您必須為包含測試的測試元件指定.dll檔案。
tcm testcase /import /collection:teamprojectcollectionurl /teamproject:project
/storage:path
[/maxpriority:priority]
[/minpriority:priority]
[/category:filter]
[/syncsuite:id [/include]]
[/login:username,[password]]
參數 | 描述 |
---|---|
/storage:path |
指定測試元件的路徑和名稱,其中包含您要匯入的自動化測試。 |
/maxpriority:priority |
選擇性。 指定要根據測試方法優先順序上限匯入的測試。 例如,如果參數是 /maxpriority:1 ,則只有測試方法的優先順序屬性小於或等於1的測試會從元件匯入為測試案例。 |
/minpriority:priority |
選擇性。 指定要根據測試方法的最小優先順序匯入的測試。 例如,如果參數是 /minpriority:2 ,則只有測試方法的優先順序屬性等於或大於 2 的測試,才會從元件匯入為測試案例。 |
/category:filter |
選擇性。 根據測試元件中每個測試方法的類別,指定要匯入的測試。 您可以搭配 /syncsuite 使用此參數,將具有特定類別的測試匯入至特定測試套件。如需測試類別的詳細資訊,請參閱 使用測試總管執行單元測試。 |
/syncsuite:id |
選擇性。 指定測試計劃中要新增所匯入測試案例的測試套件套件識別碼。 此套件不能是動態套件或查詢型套件。 如果您指定要同步處理的測試套件以更新新增的測試,則不會匯入的測試會從測試套件中移除,但不會從測試計劃本身移除。 |
如需、 與參數的描述/collection
,請參閱使用 TCM 命令列工具。/login
/teamproject
限制
- 測試案例狀態數據行必須處於 [設計 ] 狀態。
- 測試案例標題 長度 不得超過 128 個字元。
- 匯入和導出期間所建立的 JSON 物件限制為 20 MB。 如果匯入失敗,請嘗試使用測試案例的小型子集進行作業。
- 執行匯入的用戶必須具有其計劃匯入或導出的測試計劃和測試套件的區域和反覆專案路徑許可權。
- 如果測試案例的相關連結計數超過 1000,複製 和 匯 入作業會失敗。