复制和克隆测试套件和测试用例

 

发布时间: 2016年7月

如果你要在 Microsoft Visual Studio Team Foundation Server (TFS) 中计划测试,则有多种复制测试套件和测试用例的方式。

理解测试套件或计划包含一组对测试用例的引用非常重要。  如果你删除该套件,或者从每个套件删除测试用例,该测试用例仍然作为 Team Foundation 中的工作项存在,而且你可以通过查询找到它。  

在 Microsoft 测试管理器中进行复制和克隆

所有这些过程都在 Microsoft 测试管理器中执行。  选择**“测试中心”“计划”“内容”**。  (你还可以从命令行进行克隆。)  

在不同套件中引用相同测试

复制和粘贴测试用例以在不同的套件和计划中使用相同的测试。  例如,你可以有快速套件,此套件使用更全面的套件中测试的子集。  

  1. 使用 CTRL+C 复制测试用例。

  2. 选中不同的套件或计划并使用 CTRL+V 粘贴。

    (如果你未选中不同的套件,粘贴时将不执行任何操作,因为每个套件只可含有对任何测试用例的一个引用。)

如果你编辑一个套件中的测试用例,你将在查看其他套件中的测试用例时看到更改。

如果你从一个套件删除测试用例,你仅从该套件删除它。  如果你从每个套件删除它,该测试用例仍然在 Team Foundation 中存在,并且你可以使用工作项查询找到它。  

克隆并编辑测试用例

使用它创作与现有测试用例相似的新测试用例。

  1. 右键单击某个测试用例并选择**“创建副本”**。

    右击测试用例并选择“创建副本”

    新测试用例随即打开。

  2. 编辑新测试。  你必须至少更改它的标题。  在**“链接”**下,你可能希望删除指向旧测试用例的链接。  

    右击测试用例并选择“创建副本”

这两个测试可以随后互相独立地进行编辑。

从另一个计划或套件复制套件

当你为新冲刺 (sprint) 创建测试计划时,你经常需要重复之前的冲刺 (sprint) 中的某些测试,以确保你已实现的功能仍然在工作。

复制测试套件

  1. 为新冲刺 (sprint) 创建测试计划。

  2. 选择目标套件或计划,然后获取要复制的套件。

    从另一个测试计划中复制测试套件

    将复制该测试套件以及它包含的任何套件,但是它们包含对相同测试用例的引用。  源测试计划和目标测试计划共享相同的测试用例。  

在复制后,你可在任一计划中添加或删除测试用例,而不会影响另一个计划;但是,如果编辑共享测试用例,则更改将影响两个测试计划。

克隆测试计划及其测试用例

如果要使应用程序分支为两个版本,那么克隆非常有用:复制后,可以更改两个版本的测试,而不会彼此影响。

克隆测试套件

  1. 在旧测试计划的上下文菜单上,选择**“克隆计划”**。

  2. 在对话框中,选择要复制的套件并设置新区域和迭代路径。

    克隆测试计划

    如果要创建你将单独维护的新用户情景或要求,请选中**“克隆要求”**。  例如:  

    • 如果你计划最终将两个分支合并,你将需要为已实现和测试的功能保持相同的要求。  不要选中“克隆要求”。  

    • 如果你计划分离为两个相似但独立的应用程序,你可能需要更改其中一个的用户情景,而不更改另一个的用户情景。  选中“克隆要求”以为新测试用例创建一组独立的要求。  

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

  4. 如果克隆了自动测试用例,则在目标测试计划中指定生成

克隆了哪些内容?

克隆测试套件后,会将下列对象从源测试计划复制到目标测试计划:

测试计划对象

已复制

备注

测试用例

主题适用

每个新测试用例均保留其共享步骤。

源测试用例与新测试用例之间将形成链接。

新的测试用例没有测试运行、Bug、测试结果和生成信息。

克隆的测试用例引用的共享步骤

主题适用

测试套件

主题适用

将保留下列数据:

  • 测试套件的名称和层次结构

  • 测试用例的顺序

  • 分配的测试人员

  • 配置

从克隆的测试用例链接的操作录制

主题适用

链接和附件

主题适用

测试配置

主题适用

将在目标测试计划中重新应用测试配置。

测试设置

主题不适用

将应用目标测试计划的测试设置。

测试结果

主题不适用

测试运行和探索测试会话

主题不适用

由于测试运行仅适用于源测试计划,因此不会复制它们。

基于要求的套件

主题不适用

不带 /clonerequirements

基于要求的测试套件将转换为目标测试计划中的静态测试套件。  将在此静态测试套件下引用克隆的测试用例。  

克隆的测试用例不包含指向其原始要求工作项的链接。

基于要求的套件

主题适用

带 /clonerequirements

已复制并链接到要求工作项的新副本。

要求工作项(产品积压工作 (backlog) 项或用户情景)

带 /clonerequirements

已克隆与已克隆的基于要求的套件相关联的要求工作项。

Bug 工作项

带 /clonerequirements

带 /clonerequirements

在使用 Scrum 过程模板的团队项目中克隆,或在其中的 Bug 工作项类型属于要求工作项类别的任何项目中克隆。

在其他项目中,将不会克隆 Bug。

使用 tcm.exe 克隆的测试套件的示例

源测试计划

源测试计划

目标测试计划

目标测试计划

从命令行克隆测试套件

Tcm.exe 可用于复制测试套件。  打开命令提示符并将目录更改为 %VS110COMNTOOLS%..\IDE。  

打开开发人员命令提示符。  或者,使用标准命令提示符并将目录更改为 %VS110COMNTOOLS%..\IDE。  使用 tcm.exe:  

cd %VS110COMNTOOLS%..\IDE

tcm suites /clone     
   /collection:https://Server:8080/tfs/Collection 
   /teamproject:"TeamProject"
   [/destinationteamproject: "DestinationProject"]
   /suiteid:sourceId 
   /destinationsuiteid:targetId 
   [/clonerequirements] 
   [/overridefield:"field name"="new value"] [/overridefield:"field 2"="value 2" ...]] 

参数:

  • *Server、Collection、TeamProject:*Team Foundation Server、团队项目集合和团队项目的名称。

  • destinationTeamProject:如果目标测试套件在不同的团队项目中,则指定此参数。  它必须在同一团队项目集合中。  你必须为 "Iteration Path" 和 "Area Path" 指定重写字段值。  

  • suiteId 和 destinationSuiteId:要复制的套件的 ID 和新副本将添加到的套件的 ID。  如果要复制整个测试计划,请在测试计划的根目录下使用套件的 ID。  

    当你在测试计划中选择套件时,套件的 ID 将显示在详细信息窗格中。

    你还可使用 tcm suites /list 获取套件列表。

  • /clonerequirements:克隆附加到基于要求的测试套件的要求工作项。  如果忽略此参数,则基于要求的测试套件将转换为静态套件。  

  • /overridefield:"field name"="new value":更改每个克隆工作项中的字段值。  你可以使用此参数的多个匹配项更改所需数量的字段。  

示例:

tcm suites /clone /collection:http://tfs.fabrikam.com:8080/tfs/DefaultCollection
   /teamproject:IceCream /destinationteamproject:ToyStore
   /clonerequirements
   /suiteid:234 /destinationsuiteid:567 
   /overridefield:"Iteration Path"="ToyStore\sprint3"
   /overridefield:"Area Path"="ToyStore\catalog"