在 .net8 中运行 xunit 测试时遇到问题

问题描述 投票:0回答:1

我目前正在将一个大型应用程序从 .net 4.8 框架更新到 .net 8。我遇到了很多错误,但到目前为止,我已经能够通过一些研究解决大多数错误。这个问题一直困扰着我,我想这只是因为缺乏处理 dll 问题的经验并且没有完全理解问题。

在新的.net8解决方案中,由于这个错误,许多旧的测试无法通过Visual Studio运行: --- 异常 #1/2 [RdFault] 消息=“ 无法找到/加载任何以下程序集:xunit.execution.dotnet.dll,原因:System.InvalidOperationException:无法找到/加载任何以下程序集:xunit.execution.dotnet.dll 在 C:\Dev\xunit\xunit\src\xunit.runner.utility\Frameworks 2\Xunit2Discoverer.cs 中的 Xunit.Xunit2Discoverer.GetExecutionAssemblyFileName(AppDomainSupport appDomainSupport, String basePath):第 235 行 在 C:\Dev\xunit\xunit\src\xunit.runner.utility\Frameworks 2\Xunit2Discoverer.cs 中的 Xunit.Xunit2Discoverer.GetXunitExecutionAssemblyPath(AppDomainSupport appDomainSupport、字符串 assemblyFileName、布尔 verifyTestAssemblyExists) 处:第 265 行 在 C:\Dev\xunit\xunit\src\xunit.runner.utility\ 中的 Xunit.Xunit2Discoverer..ctor(AppDomainSupport appDomainSupport、ISourceInformationProvider sourceInformationProvider、字符串 assemblyFileName、字符串 configFileName、布尔值shadowCopy、字符串shadowCopyFolder、IMessageSink DiagnosticMessageSink、布尔值 verifyAssembliesOnDisk)框架 2\Xunit2Discoverer.cs:第 62 行 在 Xunit.Xunit2..ctor(AppDomainSupport appDomainSupport,ISourceInformationProvider sourceInformationProvider,字符串 assemblyFileName,字符串 configFileName,布尔值shadowCopy,字符串shadowCopyFolder,IMessageSink 诊断MessageSink,布尔值 verifyTestAssemblyExists)

起初我认为这可能是因为我安装的 xunit 软件包的版本比原始项目更新,但修复它们后没有任何改变。然后我意识到路径显然是错误的,因为我的C盘中没有Dev文件夹。

这可能是问题所在吗?我不知道下载 nuget 包时 dll 如何工作。如果问题可能出在路径上,我该如何更改?我正在努力寻找 .net8 中此问题的在线支持,因为我认为这是一个较新的问题。

感谢大家的支持和见解!

dll path xunit .net-8.0
1个回答
0
投票

经过长时间研究这个问题,解决我问题的方法是将受影响项目的输出类型从类库更改为控制台应用程序。希望这可以帮助有同样问题的人!

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.