我在 VS2019 中看到 NUnit 测试的一些非常奇怪的行为,而相同的解决方案在 VS2017 中运行良好。我的脑海里有几个 NUnit 测试项目。
在安装了 NUnit Runner 扩展的 VS2017 中,我可以在“测试资源管理器”窗口中看到所有测试,并且“运行全部”按钮将起作用并运行所有测试。我组织中的一些开发人员使用 Resharper 而不是 NUnit 扩展,这也有效。
我已经停止使用Resharper,因为随着VS引入更多功能,Resharper变得如此缓慢,以至于VS无法使用。
在 VS2019 中,测试资源管理器窗口将显示我的所有单元测试(即使没有安装 NUnit 扩展)。如果我单击“全部运行”,它将不会运行任何测试,并且“输出”窗口将显示发现 0 个测试。同事表示,Resharper 将毫无问题地运行所有测试。如果我右键单击一个测试项目并仅运行这些测试,则某些项目将运行测试,但不是全部。
对于某些项目,我尝试安装 NUnit3TestAdapater nuget 包,如果仅选择该项目,这将使 VS2019 运行该项目的测试。这并不适用于所有项目,并且仍然不适用于“运行全部”。
有谁知道可能是什么原因造成的以及什么可以解决它?我已将所有这些项目更新到最新版本的 NUnit (3.12) 和最新的 TestAdapter (3.16)。
这确实让我痛苦了大约一年,因为我需要同时安装 VS2017 和 2019,并且我需要培训新开发人员如何解决这个奇怪的问题。
我偶然发现了同样的问题。在我看来,每个版本我都必须安装越来越多的东西。
就我而言(Visual Studio 2019 社区版,版本 16.6.1),我现在还必须通过 NuGet 获取 Microsoft.NET.Test.Sdk。
所以最后,我在我的测试项目中安装了三个包:
- NUnit (3.12.0)
- NUnit3TestAdapter (3.17.0)
- Microsoft.NET.Test.Sdk (16.7.1)
不过,打开或关闭自动测试发现对我来说没有任何改变。
希望这对任何人都有帮助。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)