您可以在Microsoft Test Manager 2010的测试套件中同时运行两个测试用例吗?

时间:2013-08-13 12:37:12

标签: testing microsoft-test-manager

我正在尝试创建一个单元测试,以便在Microsoft Test Manager 2010中的两台计算机上运行。在此测试中,我希望一些客户端和服务器端测试代码同时运行;客户端测试依赖于服务器端测试成功运行。

在测试管理器中组合测试套件时,我希望能够将两个测试设置为具有相同的订单值(因此它们同时运行),但验证可以防止这种情况发生;设置顺序如下所示: Test Suite

我有什么方法可以实现我追求的同步测试执行?

2 个答案:

答案 0 :(得分:1)

对不起,迟到的答案......我错过了关于你的问题答案的通知:-(很抱歉!

如果您仍在寻找解决方案,请在此提出建议。

我想你有一个由两台机器组成的测试环境(用于服务器和客户端)。 如果是这样,您将无法对它们进行测试,或者更好地说您将无法对运行测试进行足够的控制。检查How to Run automated tests on multiple computers at the same time
其实我在“Visual Studio开发论坛”上发了一个相关的问题,你可以查看我在这里得到的答案:Is it possible to run test on several virtual machines, which belong to the same environment, using build-deploy-test workflow

这意味着你最终将创建两个环境,每个环境由一台机器组成(一台用于服务器,一台用于客户机) 但是,您将无法在构建定义中引用这两个环境,只能在 DefaultLabTemplate 中选择一个环境。

这导致了我可以建议的解决方案:

  1. 创建两个实验室环境
  2. 创建三个构建定义
    • 第一个只会构建您的测试代码
    • 第二个将从第一个成功构建部署并在服务器环境上开始测试
    • 第三个将从第一个成功构建部署并在客户端环境中开始测试。
  3. 晚上自动运行第一个构建定义
  4. 稍后同时触发后两者。
  5. 这不是很好,我知道...... 您必须将构建测试代码的构建定义与运行测试的两个构建定义同步。

    几个月前我正在考虑设置类似的测试,这是我提出的最佳解决方案......

    另一个选项我还没试过可能是:

    1. 使用由两台计算机组成的单个测试环境,并为它们使用不同的角色(分别是服务器和客户端)。
    2. MTM 中创建两个测试设置(一个用于服务器角色,另一个用于客户端角色)。
    3. 使用 tcm.exe 工具创建一个开始测试的bat文件(有关详细信息,请参阅How to: Run Automated Tests from the Command Line Using Tcm)。
      您将需要两个 tcm.exe 调用,每个测试设置创建一个。
      由于 tcm.exe 调用只是对测试运行进行排队,因此立即返回(或多或少)此浴文件将同时开始测试(或多或少)。
    4. 使用 DefaultLabTemplate 创建构建定义。 该定义将:
      • 构建测试代码
      • 将它们部署到您环境中的两台计算机上
      • 运行您的浴室脚本作为最后部署步骤
        (您必须确保此脚本位于构建计算机上或在其中部署或使其可从构建计算机访问)
    5. 正如我所说,我还没有尝试过 这种方法的缺点是您不会在构建日志中看到测试部分,因为测试不会通过 DefaultLabTemplate 提供的方式启动。因此,当测试失败时,构建不会失败 但您仍然可以在 MTM 中看到测试结果,并且每台机器都会有测试结果。

      但是,根据对您来说更重要的事情(如果测试失败或同时具有休息结果或构建定义失败),它可能是您的解决方案。

答案 1 :(得分:0)