如何将 MTM 测试用例从 TFS 2013 迁移到 VSTS?

2023-12-11

我们拥有数千本手册的遗产测试用例在我们本地的 Microsoft 测试管理器中创建TFS 2013.

我们正在努力将他们转移到VSTS事实证明这很困难。


I.

据我所知,目前微软还没有官方的迁移工具,尽管他们正在开发一种用于完整数据迁移


II.

我们尝试了一些第三方工具:

  • OpsHub- 免费版本有 2500 个限制,我们超出了该限制,并且我们无法证明商业版本的 5,000 美元成本是合理的
  • TFS 集成工具- 似乎根本没有迁移测试用例(链接的文档证实了这一点)
  • MTM复制工具- 似乎没有迁移测试用例的步骤,将它们留空

III.

我们还尝试在 Excel 中导出/导入 TFS\VSTS 查询。 这似乎也导出了步骤,但所有步骤都连接在一个字段中,它们之间甚至没有换行符,这使得它非常混乱。


IV.

我们还尝试使用第三方工具通过 Excel 进行导出/导入:

  • 导出:https://tfstestcaseexporttoexcel.codeplex.com/- 似乎导出一切都很好,包括步骤!不知道如何将此文件导入 VSTS
  • 导入:测试用例迁移器 Plus只是在我的机器上崩溃了,尽管源代码可用,所以也许我会尝试使用它

对于一次性迁移,我可以建议几个选项:

  1. 从本地 Web 访问中的测试中心,创建一个包含所有测试用例的测试计划,然后切换到主窗格中的网格视图。您可以在其中选择并复制所有测试用例(包括步骤、预期结果和其他测试用例字段)并将它们粘贴到 VSTS 项目中的等效视图中。

  2. 创建一个 powershell 脚本,从本地 TFS 获取所有测试用例并将它们复制到 VSTS。 您可以在下面找到一个片段。 警告:我没有对其进行广泛的测试,因此通常的免责声明适用。请添加您可能想要复制的其他字段。

    $VerbosePreference = "Continue"
    
    $tfsSource="the collection url that you want to copy form (eg. http://yourserver/tfs/yourcollection)";
    $tpSource="the team project containing the test cases you want to copy form";
    
    $tfsDest="the collection url that you want to copy to (eg. https://youraccount.visualstudio.com/DefaultCollection");
    $tpDest="the team project containing the test cases you want to copy to";
    
    
    [Reflection.Assembly]::LoadWithPartialName(‘Microsoft.TeamFoundation.Client’)
    [Reflection.Assembly]::LoadWithPartialName(‘Microsoft.TeamFoundation.TestManagement.Client’)
    [Reflection.Assembly]::LoadFile("C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\PrivateAssemblies\Newtonsoft.Json.dll")
    
    $sourceTpc = [Microsoft.TeamFoundation.Client.TfsTeamProjectCollectionFactory]::GetTeamProjectCollection($tfsSource)
    $sourceTcm = $sourceTpc.GetService([Microsoft.TeamFoundation.TestManagement.Client.ITestManagementService])
    $sourceProject = $sourceTcm.GetTeamProject($tpSource);
    $sourceTestCases = $sourceProject.TestCases.Query(“SELECT * FROM WorkItem”);
    
    $destTpc= [Microsoft.TeamFoundation.Client.TfsTeamProjectCollectionFactory]::GetTeamProjectCollection($tfsDest)
    $destTcm = $destTpc.GetService([Microsoft.TeamFoundation.TestManagement.Client.ITestManagementService])
    $destProject = $destTcm.GetTeamProject($tpDest);
    
    
    foreach ($tc in $sourceTestCases)
    {
        Write-Verbose ("Copying Test Case {0} - {1}" -f $tc.Id, $tc.Title)
        $destTestCase= $destProject.TestCases.Create();
        $destTestCase.Title = $tc.Title;
        $destTestCase.Priority = $tc.Priority;
    
        foreach ($step in $tc.Actions)
        {
            $destStep= $destTestCase.CreateTestStep();
    
            $destStep.Title= $step.Title
            $destStep.TestStepType= $step.TestStepType
            $destStep.Description= $step.Description
            $destStep.ExpectedResult=  $step.ExpectedResult;
            $destTestCase.Actions.Add($destStep);
        }
        $destTestCase.Save();
    }
    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 MTM 测试用例从 TFS 2013 迁移到 VSTS? 的相关文章

随机推荐

  • 在jQuery中,如何高效地添加大量元素?

    我目前有真值表生成器的草图 虽然它工作得很好 但速度相当慢 我添加到的每个布尔值组合 table 使用 jQuery 对于每个值 有一个 td 元素由 jQuery 创建 然后添加到 table 此外 我使用 jQuery UI 来制作漂亮
  • 如何知道堆栈函数消耗了多少?

    最近 我在采访中遇到了这样一个问题 我们如何确定特定函数消耗了多少堆栈存储空间 众所周知 堆栈 是平台的实现细节 无法从语言本身内部检查或以任何方式查询 本质上不可能保证 C 或 C 程序的任何部分是否可以进行另一个函数调用 堆栈大小 或者
  • 如何理解“warp 中的所有线程同时执行相同的指令”。在 GPU 中?

    我在读专业CUDA C编程 并在GPU 架构概述部分 CUDA 采用单指令多线程 SIMT 架构来管理和执行 32 个线程组 称为 warp warp 中的所有线程同时执行相同的指令 每个线程都有自己的指令地址计数器和寄存器状态 并根据自己
  • 如何复制 Xcode 项目来创建免费应用程序的付费版本

    我有一个免费的应用程序 我想制作一个付费版本 我尝试创建一个新项目并将类复制到其中 但不是很简单 有没有更简单的方法呢 我复制了目标 但是我可以通过什么方式在一个目标上设置指定的代码 并在另一个目标上设置另一个代码 你能帮助我吗 Paul
  • 如何获取邮政编码的纬度和经度?

    我需要一些帮助来动态获取用户输入的邮政编码的纬度和经度 这样我就可以在邮政编码的这些区域显示商店地址 谷歌正在运行某种地理编码 你应该检查一下 它可能对你有帮助http code google com apis maps documenta
  • Node.js - MySQL 中的“PROTOCOL_ENQUEUE_AFTER_FATAL_ERROR”

    我正在尝试编写一个Node Express来提供REST服务 应用程序启动时一切顺利 然而 几个小时后 我收到一个错误 code PROTOCOL ENQUEUE AFTER FATAL ERROR fatal false 看来有些资源即将
  • 给定 n,对 n 的数字求和。如果该值超过一位数,则继续减少产生一位数

    def digital root n x str n while len x 0 and len x 1 r 0 for i in range len x r r int x i x str r return r 数字根是数字中所有数字的递
  • Spark MapReduce 中的意外结果

    我是 Spark 新手 想了解 MapReduce 是如何在幕后完成的 以确保我正确使用它 这个帖子提供了一个很好的答案 但我的结果似乎不符合所描述的逻辑 我正在运行Spark 快速入门Scala 命令行指南 当我正确地添加行长度时 结果就
  • 类助手不会覆盖祖先的虚拟方法

    我一直将类助手理解为扩展类或部分类 它们的作用就像原始基类代码的扩展 如果我复制代码的接口部分并将其添加到基类中 并在实现中也这样做 那么代码的运行方式将与助手的运行方式完全相同 这让我始终了解助手中的多态性以及为什么它们不能重写基类中的方
  • Facebook 的通知(数据库实现)

    我想知道 Facebook 如何实现他们的通知系统 因为我想做类似的事情 FooBar 评论了你的状态 Red1 Green2 和 Blue3 对您的照片发表了评论 MegaMan 和其他 5 人评论了您的活动 我无法将多个通知写入单个记录
  • 读取文件时脚本跳过第二个 for 循环

    我正在尝试读取日志文件并将某些值与预设阈值进行比较 我的代码设法记录第一个的原始数据for在我的函数中循环 我添加了打印语句来尝试弄清楚发生了什么 并且我成功地推断出我的第二个 for 循环从未 发生 这是我的代码 def smartTes
  • 将 DataAnnotations 添加到自动生成的 DBML 类? MVC 2.0 ASP.NET

    我担心这样做 因为当 dbml 文件再次自动生成时 通常是这样 我的更改将被覆盖 我正在考虑做一个部分类并写出相同的属性来注释它们 但担心它会抱怨重复 而我什至无法实验的原因让我想到了问题的第二部分 我的 dbml 文件列表上的可扩展箭头丢
  • itextsharp 中的阿拉伯语编码

    当我尝试使用 C 这段代码创建阿拉伯语 PDF 时 生成的 PDF 文件包含离散字符 有什么帮助我无法获得连续字符吗 Create our document object Document Doc new Document PageSize
  • stl() 分解不接受单变量 ts 对象?

    我对 R 中的 stl 时间序列分解函数有疑问 告诉我我的 ts 对象不是单变量 而实际上它是单变量 tsData lt ts data dummyData start c 2012 1 end c 2014 12 frequency 12
  • 使用带有类别的 dplyr

    我有一个数据集 其中包含不同地点不同物种的计数值 该数据集不包括对物种进行调查但未发现的地点 计数 0 我尝试使用 dplyr Complete 函数来填写所有站点 但我不断收到以下错误消息 Error by can t contain j
  • 当我从模型中读取项目时,项目从组合框中消失

    I have QComboBox我设置了QStandardItemModel因为我需要其中的多选复选框 问题是 当我读取文本值并检查组合框中项目的状态时 它们从组合中消失 这就是我将模型设置为组合框的方法 areas Area one Ar
  • 将 vba 转换为 vb6 并创建 .dll - 操作方法 - 提示、技巧和风险

    我应该将用 VBA Excel 编写的大量代码转换为 VB6 但我真的不知道我必须照顾什么或从哪里开始 因此 如果能从 VB6 专家那里得到一些提示那就太好了 我已经安装了 MS Visual Studio 并进行了一些尝试 但我不是 VB
  • VBA 复制并粘贴枢轴值和格式

    我尝试复制并粘贴数据透视表 但我想保留值和格式 Sub PivotTablePaste Set pt Worksheets Sheet1 PivotTables 1 pt TableRange2 Copy With Worksheets S
  • Bash shell 中的正则表达式密码验证

    我正在使用正则表达式Bash shell 脚本 我使用下面的正则表达式代码来检查密码标准 密码长度应至少为 6 个字符 其中至少有一位数字和至少一个大写字母 我在正则表达式验证工具中进行了验证 我形成的正则表达式工作正常 但是 它在 Bas
  • 如何将 MTM 测试用例从 TFS 2013 迁移到 VSTS?

    我们拥有数千本手册的遗产测试用例在我们本地的 Microsoft 测试管理器中创建TFS 2013 我们正在努力将他们转移到VSTS事实证明这很困难 I 据我所知 目前微软还没有官方的迁移工具 尽管他们正在开发一种用于完整数据迁移 II 我