我正在尝试使用NUnit3Test适配器和.runsettings文件在Visual Studio中使用NUnit和C#进行并行测试。这基本上来自Souce Labs的这个样本我无法与NUnit3Test adpter并行运行,而不是使用控制台。
根据NUnit文档(https://github.com/nunit/docs/wiki/Tips-And-Tricks)is应该足以在项目中包含.runsettings文件并配置那里的工作人员数量。
我试过这个,但测试仍在按顺序运行。
<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
<NUnit>
<NumberOfTestWorkers>4</NumberOfTestWorkers>
</NUnit>
</RunSettings>
有什么问题吗?
答案 0 :(得分:2)
&#34;提示和技巧&#34; entry是用户的适配器的信息。它告诉您除了 nunit框架本身所涉及的一般步骤之外,您还需要在适配器下配置测试的并行性,并假设您已阅读有关并行执行的所有文档
默认情况下,nunit框架并行运行。 ParallelizableAttribute
可用于告诉它并行运行特定的测试方法或夹具。如果您确信所有测试都能够并行运行,它甚至可以在汇编级别使用。
最后一点值得重点强调!当您将[Parallelizable]
应用于测试时,您告诉框架该特定测试能够并行运行 - 它不会干扰任何其他测试。 NUnit假设你知道你在说什么。它将在一个单独的线程上运行该测试以及其他可并行化的测试,即使由于编写测试的方式而导致问题。
因此,您应首先选择一些测试并将其标记为可并行化。使测试无法并行运行的主要原因是它与其他测试共享非只读状态。
您在.runsettings
文件中提供的信息是完全可选的。如果您没有指定,NUnit将使用工作线程数的默认值。主要是使用属性。