NUnit 3.2:编译后自动运行测试 (Windows)

NUnit 3.2: Autorun tests after compile (Windows)

在新的 VS 解决方案中,我开始使用 NUnit 3.2。旧版本 (2.6) 有一个外部 NUnit GUI,这使得观察程序集和自动 运行 测试修改成为可能。但是对于 3.2,我找不到与此类似的任何内容——无论是在文档中还是通过 Google。

我已经安装了 NUnit.3.2。0.msi,我还在我的项目的 VS + NUnit3.2 nuget 包中安装了 NUnit3 测试适配器。

我可以通过 VS 的测试资源管理器轻松 运行 我的所有测试。但是我想念一些自动 运行 它们的方法。有人知道怎么做吗?

GitHub 上正在开发 NUnit 3 的 GUI - 但尚不建议将其用于生产。

我们使用 NUnitLite runner. This allows you to turn your test assembly into an executable - and on run, will launch the console and run all tests. [Documentation]

设置测试

在 Visual Studio 的旧版本中,曾经有一个选项可以在每次构建后进行 运行 测试,但它已被删除。它总是有问题,并且往往会锁定文件并阻止您重建。

您可以在测试项目上设置 post 构建命令,以便在您的测试项目重新编译时自动 运行 NUnit 控制台。您已安装 NUnit 控制台,因此您可以指向它,或使用 NUnit.Runners 包将其安装到您的解决方案的包文件夹中。

打开测试项目设置并转到 Build Events 选项卡。单击 编辑 Post-Build。输入以下内容;

"C:\Program Files (x86)\NUnit.org\nunit-console\nunit3-console.exe" "$(TargetPath)"

现在,无论何时构建,您的测试都将是 运行,结果将显示在输出 window 中。

如果在测试后有很多构建输出,但它可以工作,则可能不理想。

仅供参考,构建输出中的颜色是 VSColorOutput Visual Studio extension 的 side-effect,它不是来自 NUnit。

Visual Studio 捕获标准输出,所以我无法让它打开 CMD window 和 运行 测试。如果有人知道怎么做,请添加评论,我会更新。