複製或複製測試計劃、測試套件和測試案例

Azure DevOps Services |Azure DevOps Server 2022 - Azure DevOps Server 2019 |TFS 2018

數個工具支援測試專案的複製、複製或匯入作業,例如測試計劃、測試套件和測試案例。 測試案例描述執行測試及驗證功能實作或 Bug 修正所需的步驟。 測試套件會將測試案例和其他測試套件分組成特定順序。 測試計劃會定義要針對特定反復專案或發行執行的測試套件集合。

每個測試案例都是設計來確認特定行為。 測試案例可能屬於一或多個測試套件,不過測試套件可以屬於一個測試方案,而且只能屬於一個測試計劃。

一般而言,您應該為每個主要專案里程碑建立測試計劃。 測試專案的複製、複製或匯入作業支援下列案例:

  • 根據現有的測試計劃定義新短期衝刺或發行的測試計劃
  • 將測試套件從一個測試計劃匯入至相同或不同專案中的另一個測試計劃
  • 複製測試案例以用於不同的測試套件和測試計劃
  • 跨專案共用測試物件
  • 將測試物件從某個專案移至另一個專案,可能支援將專案合併成單一專案。

如需測試物件和術語的概觀,請參閱 測試物件和詞彙

支援的複製、複製和匯入工具

根據您使用的 Azure DevOps 版本,您可以使用下表所列的用戶端或工具來複製、複製或匯入測試計劃、測試套件或測試案例。

用戶端/工具

Test Plans

測試套件

測試案例


入口網站1

✔️ (複製)

✔️ ( 入)

✔️ (複製)
✔️ (大量匯出/匯 入)

入口網站 (Grid)

✔️ (複製並貼 上)

入口網站 (Grid)

✔️ (複製並貼 上)

工作專案表單

✔️ (複製)

Microsoft Test Manager1
(已被取代)

✔️ (複製計畫)

✔️ (建立複製)

TCM CLI2

✔️ (複製)

✔️ (複製)

✔️ (匯入自動化)

REST API3

✔️ (複製)

✔️ (複製)

注意

  1. Azure DevOps Server 2020 版後,Azure Test Plans的入口網站已大幅更新。 已新增許多新功能,以支援複製、複製、匯入和匯出。 如需概觀,請參閱流覽Test Plans
  2. 當您安裝 Visual Studio 2017 或舊版時,會安裝測試案例管理 (TCM) 命令列工具。 本文提供的範例反映 Visual Studio 2017 版本可用的選項。 舊版可能支援較少的選項。 如需詳細資訊,請參閱 使用 TCM 命令列工具
  3. 支援複製測試計劃和測試套件的 REST API 命令已新增 5.0 版,與 Azure DevOps 2019 相對應。
  1. Microsoft Test Manager (MTM) 已被取代,可用於 2020 年 1 月 Azure DevOps Server的 Azure DevOps Services,且 2020 年 2020 年 2020 年 1 月不支援。 目前版本的 Azure Test Plans支援 MTM 支援的所有功能等等。
  2. 當您安裝 Visual Studio 2017 或舊版時,會安裝測試案例管理 (TCM) 命令列工具。 本文提供的範例反映 Visual Studio 2017 版本可用的選項。 舊版可能支援較少的選項。 如需詳細資訊,請參閱 使用 TCM 命令列工具

必要條件

  • 您必須連線到專案。 如果您還沒有專案, 請建立一個專案

  • 您必須新增至專案。 若要新增, 請將使用者新增至專案或小組

  • 若要檢視與測試相關的工作專案,您必須具有 基本 存取權或更高許可權,才能在對應的區域路徑下檢視工作專案。

  • 若要新增測試方案和測試套件手動測試案例刪除測試成品,以及定義測試組態,您必須具有基本 + Test Plans存取層級,或具有下列其中一個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

    參數 描述
    /collection: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
    /teamprojectproject 必要。 包含您要複製或匯入自動化測試之測試物件的專案名稱。
    /loginusername,[password] 選擇性。 指定有效 Azure DevOps 使用者的名稱和密碼,以及有權執行命令的人員。 如果您的 Windows 認證沒有適當的許可權,或者您使用的是基本驗證,或未連線到網域,請使用此選項。
  • 您必須是專案的有效成員 () 您想要存取,並根據您執行的命令擁有必要的許可權。 若要深入瞭解,請參閱 手動測試存取權和許可權

  • 若要複製或匯入測試物件,您必須獲得新增測試計劃和測試套件所需的相同存取層級,如 必要條件中所述。

列出測試計劃或測試套件

您通常需要知道指派給測試計劃或測試套件的識別碼,以支援複製、複製或匯入作業。

您可以從 [ Boards > 查詢 ] 頁面產生測試計劃、測試套件或其他測試物件的清單。 例如,藉由設定 [工作專案類型=測試計劃],您可以列出針對小組專案定義的所有測試計劃。 如果您選擇 [ 跨所有專案 查詢] 核取方塊,查詢將會列出針對所有專案定義的所有測試計劃。 若要深入瞭解如何定義查詢,請參閱 定義工作專案查詢

提示

雖然測試計劃、測試套件和測試案例彼此相關,但您無法透過工作專案查詢來檢視關聯性。 連結類型不會用來連結測試計劃、測試套件和測試案例。 只有共用步驟和共用參數會連結至測試案例。 此外,測試案例也會連結到使用者劇本或其測試的其他工作專案。

查詢測試計劃查詢編輯器螢幕擷取畫面。

複製或複製測試計劃

建議您為每個短期衝刺或發行建立新的測試計劃。 執行此動作時,通常您可以複製先前週期的測試計劃,而且在少數變更的情況下,複製的測試計劃已準備好用於新的週期。

當您想要將應用程式分支成兩個版本時,複製非常有用。 複製之後,可以變更兩個版本的測試,而不會影響彼此。

概念映射,複製測試計劃。

注意

如果您不熟悉使用Azure Test Plans,請檢閱Navigate Test Plans,以瞭解如何使用使用者介面來存取 select 函式。

  1. 開啟[Test Plans > Test 方案],然後選擇您想要從[Mine] 或 [全部] 頁面複製的測試計劃。 選取 [更多動作],然後選擇 [複製測試計劃]功能表選項。 此選項可讓您複製或複製專案中的測試計劃。

    [測試計劃其他動作] 功能表,複製測試計劃選項。

  2. 指定新測試計劃的名稱,然後為計畫選取 [ 區域路徑 ] 和 [ 反復專案路徑 ]。

    複製測試計劃對話方塊

    根據下列指引選擇其中一個或另一個選項按鈕:

    • 參考現有的測試案例:當您打算最終合併兩個分支時,請選擇此選項。 在此情況下,您會想要針對已實作和測試的功能保留相同的需求。
    • 複製現有的測試案例:當您想要另外建立新的使用者劇本或需求時,請選擇此選項。 如果您打算分成兩個類似但分開的應用程式,您可能會想要變更一個應用程式的使用者劇本,而不變更另一個應用程式的使用者劇本。 選擇此選項會為新的測試案例建立一組獨立的需求。

    如果您複製現有的測試案例,則複製的測試案例將會獲派為複製測試計劃指定的 區域路徑反復專案路徑

    若要深入瞭解區域和反復專案路徑,請參閱 關於區域和反復專案 (短期衝刺) 路徑

  3. 頁面會重新整理以顯示新複製的測試計劃。

    複製的測試計劃,瀏覽器檢視

  4. 更新您複製的任何 查詢型套件 ,以使用新的區域和反復專案路徑。

  5. 如果您已經複製自動化測試案例,請在目的測試計劃中指定組建。

注意

Azure DevOps Server 2019 和舊版的入口網站不支援此功能。 複製測試計劃的功能需要Azure DevOps Server 2020 或更新版本。

匯入或複製測試套件

當您為新的短期衝刺建立測試計劃時,通常會想要重複先前短期衝刺中的一些測試,以確保您已實作的功能仍可運作。

概念映射,複製測試套件。

請注意:

  • 當您將 (Web) 或複製 (TCM) 至新專案時,新套件將會包含來源套件中所有測試案例的複本。 不過,它不會保留任何歷程記錄資料,例如先前的測試回合、相關的 Bug、舊的結果。
  • 測試案例所參考的共用步驟也會在目的地專案中複製和建立。
  • 您無法將測試案例從 和 複製到相同的測試計劃,即使複製到不同的套件也一樣。 若要完成此案例,您必須先將測試案例移至不同的暫存測試計劃。 然後,使用暫存測試計劃作為來源計畫,並將測試案例複製到來源測試計劃,方法是將識別碼放入目的地測試計劃位置。 在此程式中,測試案例中存在的共用步驟也會重複。

您可以使用使用者介面,將測試套件從相同或不同專案中的一個測試計劃匯入至目前專案中的另一個測試計劃。 此動作基本上會複製或複製測試套件、建立新的測試套件,以及複製任何子測試套件。 測試套件所參考的測試案例不會重複,但由複製的測試套件參考。

您可以使用 tcm suites /list 列出針對專案定義的所有測試套件。

若要在不同的套件和方案中使用相同的測試案例,請使用 方格 檢視複製並貼上測試案例。 若要深入瞭解,請參閱 (XLink)

  1. 開啟Test Plans > Test 方案,然後選擇您要從MineAll頁面匯入測試套件的測試計劃。 選取 [更多動作],然後選擇 [複製測試計劃]功能表選項。 此選項可讓您複製或複製專案中的測試計劃。

    [測試套件更多動作] 功能表、[匯入測試套件] 選項。

  2. 在開啟的對話方塊中,如果測試計劃位於不同的專案中,請選擇專案。 否則,請選取測試計劃和測試套件,然後選擇 [ 建立]。 您一次只能從測試計劃匯入一個套件。

    從 [測試計劃] 對話方塊匯入套件

  3. 隨即顯示下列訊息:

    匯入套件起始的訊息。

  4. 匯入作業完成時,您會看到下列訊息。 選擇 [重新整理 ] 以重新整理瀏覽器。

    匯入套件已完成訊息。

    接著會顯示新新增的測試套件。

    顯示的匯入測試套件。

注意

Azure DevOps Server 2019 和舊版的入口網站不支援此功能。 匯入測試套件的功能需要Azure DevOps Server 2020 版或更新版本。

複製測試案例 (s)

您可以從入口網站將測試案例從專案或另一個專案複製到測試套件,或者您可以使用 方格 檢視,將測試案例從一個套件 複製並貼 到另一個套件。 您可以選擇 性地大量匯入和匯出測試案例

提示

當您真正想要執行的動作是使用不同的 組態不同的資料進行測試時,請勿複製測試案例。

您可以從組織或集合中的專案或其他專案,將測試案例複製到指定的測試計劃和測試套件。 同時,您可以選擇複製所有連結和附件。

  1. 開啟Test Plans > Test 方案,選擇包含測試案例的測試計劃, (您想要從MineAll頁面複製的測試案例) 。 接下來,選擇包含您要複製之測試案例 () 的測試套件。 從 [ 定義 ] 頁面,選取您要複製之所有測試案例的核取方塊。

  2. 選擇 [更多動作],然後選擇 [複製測試案例] 功能表選項。

    [測試案例更多動作] 功能表,複製測試案例選項。

  3. 從 [ 複製測試案例] (的 [) ] 對話方塊中,從不同的專案複製測試案例時,選擇 [專案]。 接下來,選取要複製測試案例的測試方案和測試套件。

    複製測試案例對話方塊

    選擇性地選取 [包含現有連結 ] 和 [ 包含現有附件] 的核取方塊。 完成時,請選擇 [ 建立]。

    根據所選取測試案例的數目和複雜度,複製作業將會在背景中執行。 完成後,您會收到一則訊息,指出作業已完成,以及已複製測試案例的測試套件連結。

複製和貼上測試案例 () (格線檢視)

您可以複製並貼上測試案例,以便在不同的套件和方案中使用相同的測試。 例如,您可以有一個測試套件,其使用更詳盡的測試套件中定義的測試子集。 [定義 > 格線] 檢視支援編輯測試案例,以及將測試案例複製並貼到不同的測試套件。 如需編輯測試案例,請參閱 建立測試案例、使用方格檢視來編輯測試案例

提示

當您真正想要執行的動作是使用不同的 組態不同的資料進行測試時,請勿複製測試案例。

您可以從 Internet Explorer、Edge 或 Chrome 瀏覽器,將測試案例從一個測試計劃和測試套件的 Grid 檢視複製到另一個測試方案和測試套件。

  1. [Test Plans > Test 方案] 頁面中,選擇包含您要複製之測試案例 (的測試套件) 。 在 [ 定義] 索引標籤內,選擇 [方格 ] 檢視。

  2. 反白顯示您想要複製的資料列,然後輸入 CTRL+C

    從方格檢視複製測試案例。

  3. 從相同或不同的方案選取不同的測試套件,然後貼上 CTRL+V。 如果您未選取不同的套件,則貼上時不會發生任何事,因為每個套件只能有一個測試案例的參考。

  4. 選擇 [ 儲存測試案例]。

    新的測試案例會以指派的新識別碼儲存。

    儲存的測試案例貼到方格檢視中。

大量匯入或匯出測試案例

您可以從入口網站執行測試案例的大量匯入或匯出,或從/匯出至測試套件。 測試案例會在 CSV) 檔案 (逗號分隔值中定義。

匯出測試案例

  1. [Test Plans > Test 計畫] 頁面中,選擇包含您要匯出之測試案例的測試套件的測試計劃。

  2. 選擇性。 選擇 [資料行選項] 以新增要包含在下載檔案中的欄位。

  3. 若要匯出測試套件的所有測試案例,請選擇 [ 將測試案例匯出至 CSV]。

    從選取的測試套件匯出測試案例的螢幕擷取畫面。

    若要匯出測試套件的測試案例子集,請選取要匯出的測試案例、選擇 [更多選項],然後選取 [將測試案例 () 匯出至 CSV

    所選測試案例的螢幕擷取畫面,將測試案例匯出至 CSV。

  4. 匯出的 CSV 檔案會出現在您的 [下載 ] 資料夾中。

匯入測試案例

  1. [Test Plans > Test 計畫] 頁面中,選擇測試計劃與您要匯入測試案例的測試套件。

    將測試案例匯入至所選測試套件的螢幕擷取畫面。

  2. 選擇要從開啟對話方塊匯入的檔案,然後選擇 [ 入]。

    [匯入測試案例] 對話方塊。

  3. 在顯示的 [確認匯入] 對話方塊中,選擇 [確認]。 如果您指定已在測試套件中定義的測試案例,某些元素可能會在匯入期間過度寫入。

(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]]
參數 描述
/storagepath 指定測試組件的路徑和名稱,該組件包含您要匯入的自動化測試。
/maxprioritypriority 選擇性。 指定要根據測試方法的最高優先順序匯入哪些測試。 例如,如果 參數是 /maxpriority:1 ,則只有測試方法的優先順序屬性小於或等於 1 的測試會從元件匯入為測試案例。
/minprioritypriority 選擇性。 指定要根據測試方法的最低優先順序匯入哪些測試。 例如,如果 參數是 /minpriority:2 ,則只有測試方法的優先順序屬性等於或大於 2 的測試會從元件匯入為測試案例。
/categoryfilter 選擇性。 指定要根據測試組件中每個測試方法的分類匯入哪些測試。 您可以搭配 /syncsuite 使用此參數,將具有特定類別的測試匯入特定測試套件。
如需測試類別的詳細資訊,請參閱 使用測試總管執行單元測試
/syncsuiteid 選擇性。 指定測試計劃中測試套件的套件 ID,在該套件中您想要加入匯入的測試案例。 此套件不可以是動態套件或查詢式套件。 如果您指定要同步的測試套件來更新已新增的測試,則不會匯入的測試會從測試套件中移除,但不會從測試計劃本身移除。

如需 、 /teamproject/login 參數的描述 /collection ,請參閱使用 TCM 命令列工具

後續步驟

REST API

您可以使用下列 REST API 複製和複製測試計劃和測試套件。