如何让 NCrunch 在后台运行测试时停止启动 DiffReporter,但在手动运行测试时轻松获取 DiffReport?
我一直试图让它工作一段时间,但我尝试过的任何组合都没有给我我正在寻找的结果。我目前正在将该[UseReporter(typeof(DiffReporter))]
属性注释掉。当测试开始失败时,我会回来并取消注释,直到我解决问题,然后将其注释掉,但这对于具有多个[TestCase]
. 从我在 ApprovalTests 博客上阅读的内容来看,这似乎应该是可能的。
我的 diff 软件是 Beyond Compare,我的代码目前如下所示:
测试项目/AssemblyInfo.cs
[assembly: UseReporter(typeof(NCrunchReporter))]
测试项目/ClassTests.cs
public class ClassTests
{
[Test]
//[UseReporter(typeof(DiffReporter))]
[TestCase(1, 1)]
[TestCase(1, 2)]
[TestCase(2, 1)]
[TestCase(3, 1)]
public void TestCase(int errorNumber, int )
{
using (ApprovalResults.ForScenario(errorNumber, testCaseSubtestNumber))
{
var results = DoSomething();
Approvals.Verify(results);
}
}
}
更新:
我正在使用以下 NuGet 包:
- ApprovalTests v3.0.11
- ApprovalUtilities v3.0.11
- NUnit v3.2.1