我正在尝试在 Visual Studio 2022 专业版中对旧项目执行 NUnit 测试。从 NUnit 2 迁移到 NUnit 3 尚不可行,部分团队使用 Visual Studio 2019。我面临的问题是 VS 2022 未执行测试,尝试时没有任何错误消息。
测试资源管理器在执行测试后显示以下内容(控制台输出以成功构建结束):
NuGet 包管理器已安装 NUnit 2.6.1。我还安装了数据包
NUnit.Extension.NUnitV2Driver
和NUnit.Extension.NUnitV2ResultWriter
。测试适配器似乎仅适用于 NUnit3(NUnit3TestAdapter
,我也安装了)。我启用了单个项目的所有包,如这个问题中所评论的那样。是否还有其他需要安装/配置的东西,我可能会丢失以使其工作?
只是一些建议的方法...
NUnit3TestAdapter,顾名思义,是为 NUnit 3 设计的。虽然它能够通过使用 NUnitV2Driver 扩展来运行 NUnit3 测试,但我认为仅通过安装包就无法在 Visual Studio 下工作。您可以通过修改与适配器一起安装的
.addins
文件进行实验,但我无法给您准确的说明,因为我还没有尝试过。
顺便说一句,V2 驱动程序扩展生成 V3 格式的输出,这可能是您想要在 Visual Studio 下使用的格式。仅当您有理由想要 V2 格式的输出文件时才需要 V2 结果编写器。
我认为您最好的选择可能是尝试使用 NUnitTestAdapter 的最新版本(即名称中没有“3”),它仅适用于 NUnit V2。如果它可以在 VS2022 下加载,它应该完全按照您的要求执行。在这种情况下,您应该停止加载 V2 运行程序不支持的两个扩展。
对我来说,一个小细节是,在 Visual Studio 2019 中,NUnitTestAdapter 是通过“扩展”->“管理扩展”安装的。在 Visual Studio 2022 中,它实际上是通过右键单击引用,然后单击“管理 NuGet 包”,然后浏览查找 NUnitTestAdapter 将其添加到测试项目中的。完成此操作后,文本资源管理器将执行 NUnit 2 测试。