Gie*_*666 11 .net nunit visual-studio
将 VS Pro 2022 更新到最新可用版本 17.4.0 后,我无法再在我的 VS 解决方案之一中运行任何 NUnit 测试。测试资源管理器正确显示测试列表,但是,没有一个测试实际上正在执行。我可以看到一些警告正在累积,这是打印输出:
========== 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
Run Code Online (Sandbox Code Playgroud)
回滚到之前使用的版本 17.3.6 似乎可以解决该问题。
也许有人遇到过类似的问题?
Gie*_*666 21
设法按照此处的建议将 NUnit3TestAdapter 升级到版本 4.3.0 来解决该问题:https://github.com/nunit/nunit3-vs-adapter/issues/987
另外,必须将 NUnit3TestAdapter nuget 添加到日志中提到的四个 TestHelpers 项目中。
| 归档时间: |
|
| 查看次数: |
9264 次 |
| 最近记录: |