我正在尝试创建一个单元测试,以便在Microsoft Test Manager 2010中的两台计算机上运行。在此测试中,我希望一些客户端和服务器端测试代码同时运行;客户端测试依赖于服务器端测试成功运行。
在测试管理器中组合测试套件时,我希望能够将两个测试设置为具有相同的订单值(因此它们同时运行),但验证可以防止这种情况发生;设置顺序如下所示:
我有什么方法可以实现我追求的同步测试执行?
答案 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 中选择一个环境。
这导致了我可以建议的解决方案:
这不是很好,我知道......
您必须将构建测试代码的构建定义与运行测试的两个构建定义同步。
几个月前我正在考虑设置类似的测试,这是我提出的最佳解决方案......
另一个选项我还没试过可能是:
正如我所说,我还没有尝试过 这种方法的缺点是您不会在构建日志中看到测试部分,因为测试不会通过 DefaultLabTemplate 提供的方式启动。因此,当测试失败时,构建不会失败 但您仍然可以在 MTM 中看到测试结果,并且每台机器都会有测试结果。
但是,根据对您来说更重要的事情(如果测试失败或同时具有休息结果或构建定义失败),它可能是您的解决方案。
答案 1 :(得分:0)