我正在使用Visual Studio 2017 Enterprise和MSTest V2。我的解决方案有多个单元测试项目。在一个项目中,我有单元测试,用于测试从安装目录加载资源。大多数测试都会测试资源是否正确加载,但是有些测试会删除资源以确认是否正确处理了资源。
我遇到的问题是测试并行运行。因此,删除资源的测试会在运行正在加载资源的测试的同时执行此操作,并且测试失败。
我意识到我可以通过更新代码以发送目录以进行搜索来解决此问题,或者通过运行一组测试然后进行另一组测试来解决此问题,但是我希望能够一次运行所有测试。听起来MSTest v2应该按顺序运行,除非另有指示要并行运行,但是在我的系统上,这显然是错误的。看来,有序测试不适用于v2。有没有办法让MSTest V2顺序运行?
答案 0 :(得分:0)
要使测试按顺序运行,请在.runsettings文件中将MaxCpuCount设置为1,有关更多信息,请参见:Configure unit tests by using a .runsettings file。
答案 1 :(得分:0)
我想说你可以创建一个标志并从依赖测试更新它,在清理资源之前检查标志状态。可能是 testname 和 status 的字典,一旦完成,执行此测试或等待该测试完成。您可以为此实现自定义逻辑。