首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >升级到NUnit 17.4.0后无法运行VS2022测试

升级到NUnit 17.4.0后无法运行VS2022测试
EN

Stack Overflow用户
提问于 2022-11-15 09:53:01
回答 3查看 276关注 0票数 2

在将VS Pro 2022更新到最新版本17.4.0之后,我无法在我的VS解决方案中运行任何NUnit测试。测试资源管理器正确地显示测试列表,但是,它们都没有实际执行。我可以看到,一些警告正在累积,这是打印输出:

代码语言:javascript
运行
复制
========== Starting test discovery ==========
Test project TestHelpers does not reference any .NET NuGet adapter. Test 
discovery or execution might not work for this project.
It's recommended to reference NuGet test adapters in each test project in the solution.
Test project TestHelper.NUnitAssert does not reference any .NET NuGet 
adapter. Test discovery or execution might not work for this project.
It's recommended to reference NuGet test adapters in each test project in the solution.
Test project TestHelper.AutoData does not reference any .NET NuGet adapter. 
Test discovery or execution might not work for this project.
It's recommended to reference NuGet test adapters in each test project in the solution.
Test project TestHelpers.Data does not reference any .NET NuGet adapter. 
Test discovery or execution might not work for this project.
It's recommended to reference NuGet test adapters in each test project in the solution.
NUnit Adapter 4.2.0.0: Test discovery starting
NUnit Adapter 4.2.0.0: Test discovery starting
NUnit Adapter 4.2.0.0: Test discovery starting
NUnit Adapter 4.2.0.0: Test discovery starting
NUnit Adapter 4.2.0.0: Test discovery starting
Exception System.TypeInitializationException, Exception thrown discovering tests in C:\Projects\MyProj\TestProjects\TestHelpers\bin\Debug\TestHelpers.dll
The type initializer for 'NUnit.Engine.Services.RuntimeFrameworkService' threw an exception.
NUnit Adapter 4.2.0.0: Test discovery starting
at NUnit.Engine.Services.RuntimeFrameworkService.ApplyImageData(TestPackage package)
at NUnit.Engine.Services.RuntimeFrameworkService.SelectRuntimeFramework(TestPackage package)
at NUnit.Engine.Runners.MasterTestRunner.GetEngineRunner()
at NUnit.Engine.Runners.MasterTestRunner.Explore(TestFilter filter)
at NUnit.VisualStudio.TestAdapter.NUnitEngine.NUnitEngineAdapter.Explore(TestFilter filter) in D:\repos\NUnit\nunit3-vs-adapter\src\NUnitTestAdapter\NUnitEngine\NUnitEngineAdapter.cs:line 88
at NUnit.VisualStudio.TestAdapter.NUnit3TestDiscoverer.DiscoverTests(IEnumerable`1 sources, IDiscoveryContext discoveryContext, IMessageLogger messageLogger, ITestCaseDiscoverySink discoverySink) in D:\repos\NUnit\nunit3-vs-adapter\src\NUnitTestAdapter\NUnit3TestDiscoverer.cs:line 82
InnerException: System.ArgumentException: Unknown framework version 7.0
Parameter name: version
at NUnit.Engine.RuntimeFramework.GetClrVersionForFramework(Version frameworkVersion)
at NUnit.Engine.RuntimeFramework..ctor(RuntimeType runtime, Version version, String profile)
at NUnit.Engine.RuntimeFramework.GetNetCoreRuntimesFromDirectoryNames(IEnumerable`1 dirNames)
at NUnit.Engine.RuntimeFramework.FindDotNetCoreFrameworks()
at NUnit.Engine.RuntimeFramework.get_AvailableFrameworks()
at NUnit.Engine.Services.RuntimeFrameworkService..cctor()
NUnit Adapter 4.2.0.0: Test discovery complete

回到以前使用的17.3.6版本似乎解决了这个问题。

也许有人遇到过类似的问题?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2022-11-16 16:40:56

设法通过将NUnit3TestAdapter升级到4.3.0版本来解决这个问题,按照此处的推荐:https://github.com/nunit/nunit3-vs-adapter/issues/987

另外,必须将NUnit3TestAdapter nuget添加到日志中提到的四个TestHelpers项目中。

票数 1
EN

Stack Overflow用户

发布于 2022-11-30 17:20:34

将NUnit3TestAdapter升级到4.3.1,测试应该可以工作。

票数 0
EN

Stack Overflow用户

发布于 2022-12-01 09:31:33

在进行升级时,NuGet包管理器抱怨道:"Nunit.Console运行程序3.15.2未能卸载。请重新启动Visual以完成此过程“。

重新启动了几次,但是错误仍然存在,Nunit测试无法运行。

我从Nunit测试项目中删除了nunit.framework引用,然后将它添加回它。之后,测试成功地运行。

从昨天晚上开始,我就没有做过测试,今天早上我就开始做一些改变--我以为我已经做过了!

哎呀!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74443610

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档