2017-02-26 33 views
1

我正在使用NUnit 3.5.0。根据this page,如果您有多个测试组件,测试是自动并行运行默认如何在Visual Studio中串行运行测试?

它继续告诉你如何从命令行限制并行进程的数量。但是,如何关闭Visual Studio中的并行处理?

背景:我有15个不同的测试组件(超过6500测试),这是不实际将它们组合成一个单一的组件,只是为了让他们连续运行的缘故。几个测试有一些共享状态,需要在下一次测试运行之前清理掉。我只是想像在NUnit 2.6中那样连续运行测试,但是我不能降级,因为我需要支持.NET Core。

回答

2

我没有测试过任何的下方,但是这是我认为发生。

NUnit测试适配器实际上正在运行测试 - 这不涉及程序集的并行化。您链接的页面引用了NUnit引擎,它是适配器使用的底层库。适配器为引擎指定“正在运行”模式。

我想这是因为VS调用每个程序集一个进程 - 我不确定如果使用外部进程,NUnit引擎会太高兴。 NUnit引擎是建立在相信它正在控制所有进程而不是其他东西(这里是:VS)的情况下调用引擎的多个实例。

所以,我认为你需要控制VS的并行化。这是通过.runsettings file管理 - 尝试设置MaxCpuCount为1.

相关问题