通过


复制或克隆测试计划、测试套件和测试用例

Azure DevOps 服务 |Azure DevOps Server |Azure DevOps Server 2022

多个工具支持测试项目(例如测试计划、测试套件和测试用例)的复制、克隆或导入作。 测试用例描述了运行测试和验证功能实现或 bug 修复所要执行的步骤。 测试套件将测试用例以及可选的其他测试套件按特定顺序分组。 测试计划定义了一个测试套件的集合,以运行一个特定的迭代或发布。

每个测试用例都旨在确认特定的行为。 测试用例可能属于一个或多个测试套件。 但是,测试套件只能属于一个测试计划。

一般情况下,为每个主要项目里程碑创建测试计划。 对测试项的复制、克隆或导入操作支持以下场景:

  • 基于现有测试计划,为新的冲刺或版本发布制订测试计划。
  • 将测试套件从一个测试计划导入到同一个或不同项目中的另一个测试计划。
  • 复制测试用例,以便在不同的测试套件和测试计划中使用。
  • 跨项目共享测试对象。
  • 将测试对象从一个项目移到另一个项目,可能支持将项目合并到单个项目中。

有关详细信息,请参阅测试对象和术语概述

每个操作保留的内容

下表汇总了每个操作保留的内容及其不保留的内容。

物品 复制或克隆测试计划 导入测试套件 复制测试用例
测试套件和层次结构 保留 保留,包括子套件 不适用
测试用例引用 引用或复制(你选择) 引用,不重复 使用新 ID 重复
共享步骤 参考 克隆到目标项目 参考
共享参数 参考 未克隆 参考
测试配置 保留 保留 不适用
测试运行历史记录和结果 未保留 未保留 未保留
测试人员分配 未保留 未保留 未保留
链接和附件 保留 保留 可选(你选择)
区域和迭代路径 设置为目标值 继承自目的地计划 设置为目标值

先决条件

类别 要求
项目访问 项目成员
访问级别 - 若要查看与测试相关的工作项:至少具有 基本 访问权限。 具有 利益干系人 访问权限的用户无权访问测试计划。
- 若要添加测试计划和测试套件,请删除测试项目并定义测试配置:Basic + 测试计划访问或以下Visual Studio订阅之一:
- 企业
- 测试专家
- MSDN 平台
权限 区域路径权限:
- 若要添加或修改测试计划、测试套件、测试用例或其他基于测试的工作项类型:编辑此节点中的工作项设置为“允许”。
- 若要修改测试计划属性,例如生成和测试设置:管理设置为“允许的测试计划
- 若要创建和删除测试套件,请从测试套件中添加和删除测试用例,更改与测试套件关联的测试配置,并修改测试套件层次结构(移动测试套件): 将测试套件 设置为 “允许”。

项目级权限:
- 若要管理测试配置或测试环境:管理测试配置和管理设置为“允许的测试环境
- 若要永久删除基于测试的工作项:永久删除设置为“允许的工作项

如需更多信息,请参阅 手动测试访问和权限

提示

可以在本文的后面部分使用 AI 来帮助完成此任务,也可以参阅 Azure DevOps MCP Server 的文档以启用 AI 协助来开始使用。

支持的复制、克隆和导入工具

可以使用下表中列出的客户端或工具复制、克隆或导入测试计划、测试套件或测试用例。

Client/tool

测试计划

测试套件

Test Cases(测试用例)


Web 门户

✔️ 复制

✔️ 导入

✔️ 复制 ✔️ 批量导出/导入

Web 门户(网格)

工作项窗体

✔️ 复制

REST API

✔️ 克隆

✔️ 克隆

列出测试计划或测试套件

执行与测试计划或测试套件相关的复制、克隆或导入作时,需要其唯一 ID。 此标识符可帮助你确定要使用的特定计划或套件。 通过了解分配的 ID,可以简化测试过程,并确保准确复制或传输与测试相关的数据。

若要生成测试计划、测试套件或其他测试对象的列表,请执行以下步骤:

  1. 从你的项目中选择 Boards>查询
  2. 在查询编辑器中输入参数 Work Item Type=Test Plan 。 可以列出为团队项目定义的所有测试计划。
  3. 选中“ 跨项目查询 ”复选框。 查询列出了为所有项目定义的所有测试计划。 有关详细信息,请参阅定义工作项查询
  4. 运行查询。

提示

虽然测试计划、测试套件和测试用例彼此相关,但是不能通过工作项查询查看它们之间的关系。 链接类型不链接测试计划、测试套件和测试用例。 只有共享步骤和共享参数链接到测试用例。 此外,测试用例链接到用户情景或他们测试的其他工作项。

查询编辑器 的截图。

复制或克隆测试计划

在为每个冲刺或发布创建新测试计划时,建议考虑从上一个周期复制测试计划。 通过最小的调整,复制的测试计划适合新周期。 这种做法简化了规划过程,并确保迭代之间的一致性。

需要将应用程序分支到两个版本时,克隆尤其有用。 克隆后,可以单独为每个版本修改测试,而不会影响另一个版本。 这是一种有效的方法,可以管理测试工作,同时保持不同应用程序变体之间的分离。

概念映像,克隆测试计划。

  1. 从项目中选择 测试计划>测试计划

  2. 从“我的”或“全部”页选择要复制的测试计划。

  3. 选择更多操作>复制测试计划。 使用此选项可在项目中复制或克隆测试计划。

    屏幕截图显示“测试计划更多操作”菜单,复制测试计划选项。

  4. 输入新测试计划的名称,并为计划选择 区域路径迭代路径

    显示“复制测试计划”对话框的屏幕截图。

    • 根据以下指南选择两个单选按钮之一:
      • 引用现有测试用例:克隆的测试计划指向与源计划相同的测试用例。 两个计划中都会显示测试用例的更改,并且测试结果是共享的。 如果计划最终合并这两个分支,并且想要保留对已实现和测试的功能相同的要求,请选择此选项。
      • 复制现有测试用例:克隆的测试计划使用新的 ID 创建每个测试用例的新副本。 每个副本都有独立的生命周期 - 对一个副本的更改不会影响另一个副本。 重复的测试用例链接到与原始测试用例相同的要求。 如果希望跨分支或版本独立维护单独的测试用例,请选择此选项。

    如果复制现有测试用例,则复制的测试用例将分配为克隆的测试计划指定的 区域路径迭代路径

    有关详细信息,请参阅关于区域和迭代(冲刺)路径

    页面将刷新,以显示新复制的测试计划。

    显示已复制测试计划、浏览器视图的屏幕截图。

  5. 更新你复制的任何基于查询的套件,以使用新的区域和迭代路径。

  6. 如果克隆了自动测试用例,请在目标测试计划中指定生成和发布管道。 自动测试方法关联在克隆期间会保留,但目标计划必须引用正确的构建来运行这些测试。 有关详细信息,请参阅从测试计划运行自动测试

导入或克隆测试套件

为新的冲刺创建测试计划时,通常需要重复以前的一些冲刺测试。 此方法有助于确保已实现的功能仍然有效。

概念图,复制测试套件。

注意

  • 将测试套件导入新项目时,新套件包含源套件中所有测试用例的副本。 但是,它不会保留任何历史数据,例如以前的测试运行、相关的 bug 或旧结果。
  • 该过程还会克隆并创建共享步骤,目标项目中的测试用例会引用这些步骤。
  • 无法克隆同一测试计划中的测试用例,甚至无法将其克隆到不同的套件中。 若要完成此方案,必须先将测试用例移动到其他临时测试计划。 然后,使用临时测试计划作为源计划,并通过将 ID 放入目标测试计划位置将测试用例克隆回源测试计划。 此过程还会复制测试用例中存在的共享步骤。

使用Azure Test Plans时,可以将测试套件从一个测试计划导入到同一项目中或跨项目的另一个测试计划。 此过程复制或克隆测试套件并创建新的测试套件。 此外,此过程将复制任何子测试套件。 该过程不会复制测试套件引用的测试用例。 相反,克隆的测试套件会引用这些测试用例。

重要

跨项目导入时,该过程不会自动传递源项目中的区域路径和迭代路径。 导入的测试套件从目标测试计划继承区域和迭代路径。 导入后查看并更新这些路径,以确保它们与项目结构匹配。

若要在不同的套件和计划中使用相同的测试用例,请使用 网格 视图复制和粘贴测试用例。

  1. 选择测试计划>测试计划

  2. 从“我的”或“全部”页选择要导入测试套件的测试计划。

  3. 选择“ 更多操作>导入测试套件”。 此选项允许从另一个测试计划导入测试套件。

    屏幕截图显示测试套件更多操作菜单,“导入测试套件”选项。

  4. 如果测试计划位于其他项目中,请在打开的对话框中选择该项目。 否则,请输入测试计划名称或 ID 以及测试套件名称或 ID。 还可以从下拉菜单中选择名称或 ID。

  5. 创建导入。 一次只能从测试计划导入一个套件。

    显示了从“测试计划”对话框导入套件的屏幕截图。

    将显示以下消息:

    显示“导入套件已启动”消息的屏幕截图。

  6. 导入操作完成后,将显示以下消息。 选择“刷新”以刷新浏览器。

    显示“导入套件已完成”消息的屏幕截图。

    门户显示新添加的测试套件。

    显示已导入测试套件的屏幕截图。

复制测试用例

从 Web 门户,你可以将测试用例从项目内或另一个项目复制到测试套件,也可以使用网格视图将测试用例从一个套件复制并粘贴到另一个套件。 (可选)可以批量导入和导出测试用例

提示

如果要使用不同的配置不同的数据进行测试,请不要复制测试用例。

可以从项目内或组织或集合中的另一个项目复制测试用例。 可以选择在复制过程中包括所有链接和附件。

  1. 选择测试计划>测试计划

  2. 选择一个包含您想从我的全部页面复制的一个或多个测试用例的测试计划。

  3. 选择要复制的一个或多个测试用例的测试套件。

  4. 从“定义”页中,选中要复制的所有测试用例的复选框。

  5. 选择更多操作>复制测试用例

    屏幕截图显示“测试用例更多操作”菜单,复制测试用例选项。

  6. 从下拉菜单中选择项目,然后输入测试计划名称或 ID 以及测试套件名称或 ID。 还可以从下拉菜单中选择名称或 ID。

    显示“复制测试用例”对话框的屏幕截图。

  7. (可选)选中“包括现有链接”和“包括现有附件”复选框。

  8. 创建副本。

    后台复制操作取决于所选测试用例的数量和复杂性。 完成后,系统会向你发送一条通知,确认作是否成功,以及指向复制的测试用例所在的测试套件的链接。

复制并粘贴测试用例(网格视图)

管理测试用例时,复制和粘贴是跨各种套件和计划重用相同测试的宝贵技术。 例如,你可能拥有一个全面的测试套件,并希望在另一个套件中创建更集中的测试子集。 “定义>网格”视图支持编辑测试用例并将其复制到不同的测试套件。 有关详细信息,请参阅创建测试用例、使用“网格”视图编辑测试用例

提示

如果要使用不同的配置不同的数据进行测试,请不要复制测试用例。

可以将测试用例从一个测试计划和测试套件的 网格 视图中复制到另一个测试计划和测试套件。

  1. 测试计划>测试计划页中,选择包含一个或多个要复制的测试用例的测试套件。 在“定义”选项卡中,选择网格视图。

  2. 突出显示要复制的行,然后输入 CTRL+C

    显示了“从网格复制测试用例”视图的屏幕截图。

  3. 从相同或不同的计划中选择不同的测试套件,并使用 CTRL+V 粘贴。 如果不选择其他套件,则粘贴时不会发生任何操作,因为每个套件只能对任何测试用例有一个引用。

  4. 选择保存测试用例

    新的测试用例将使用分配的新 ID 进行保存。

    显示粘贴到网格视图中的已保存测试用例的屏幕截图。

REST API

可以使用以下 REST API 复制和克隆测试计划和测试套件:

使用 AI 复制和克隆测试项

如果配置 Azure DevOps MCP Server,则可以使用 AI 助手通过自然语言提示管理测试计划、套件和事例。

复制和克隆测试项的示例提示

任务 示例提示
列出测试计划 List all test plans in <Contoso> project
查看测试套件 Show all test suites in test plan <12345> in project <Contoso>
查找要复制的测试用例 List all test cases in test suite <67890> that have State = <Ready>
检查计划覆盖范围 Show all test suites in test plan <12345> and the count of test cases in each
比较方案 List test suites in test plan <12345> and test plan <54321> side by side
查找重复的测试用例 Find test cases in <Contoso> project with the same title
识别短跑之间的差距 Show test cases in test plan <12345> that don't exist in test plan <54321>
查找共享测试用例 List test cases that appear in more than one test suite in project <Contoso>
准备克隆 Show all test suites in test plan <12345> that contain automated test cases

提示

如果使用 Visual Studio Code,agent 模式特别有助于排查复杂的复制和克隆操作问题。

  • 若要避免使用以前查询中的过时或缓存的数据,请添加到提示“不要使用以前提取的数据”。

后续步骤