无法加载文件或程序集System.Reflection.TypeExtensions

时间:2017-12-04 15:16:47

标签: visual-studio-2017 xunit

我在运行xunit测试项目时遇到异常,这些项目在VS 2017 15.3下工作

  

[2017/12/4 23:08:40错误] [xUnit.net 00:00:00.0033291] xxx.Test:灾难性故障:System.TypeInitializationException:' Xunit.DiaSession&#39的类型初始值设定项;抛出一个例外。 ---> System.IO.FileNotFoundException:无法加载文件或程序集&System; System.Reflection.TypeExtensions,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'或其中一个依赖项。该系统找不到指定的文件。      在Xunit.DiaSession..cctor()      ---内部异常堆栈跟踪结束---      在Xunit.DiaSession..ctor(String assemblyFileName)      在Xunit.DiaSessionWrapper..ctor(String assemblyFilename)      在Xunit.XunitFrontController..ctor(AppDomainSupport appDomainSupport,String assemblyFileName,String configFileName,Boolean shadowCopy,String shadowCopyFolder,ISourceInformationProvider sourceInformationProvider,IMessageSink diagnosticMessageSink)      在Xunit.Runner.VisualStudio.TestAdapter.VsTestRunner.RunTestsInAssembly(IRunContext runContext,IFrameworkHandle frameworkHandle,LoggerHelper logger,IMessageSinkWithTypes reporterMessageHandler,AssemblyRunInfo runInfo)   我目前的VS 2017版本是15.4.5。

我已经尝试过以前提供的工作,但没有一个不起作用。我试图将我的VS 2016降级到15.3,但我找不到要安装的15.3软件包。我试图将xunit安装到最新版本。 任何帮助将不胜感激 更新:
项目类型:xUnit测试项目(.NET Core)
目标:净461

2 个答案:

答案 0 :(得分:6)

似乎VS 2017无法加载特定的" xunit.runner.visualstudio",再次检查VS2017 15.4.2 - Unable to run tests for projects targeting .NET Framework 4.6.x #1542之后,我删除了"%TEMP%\ VisualStudioTestExplorerExtensions",创建一个新的Xunit项目,将nonworked.csproj xunit.runner.visualstudio从2.2.0更改为2.3.1,现在可以使用了。我不确定为什么以前尝试时它不起作用。
希望它能帮助别人。

答案 1 :(得分:0)

您需要使用VS Package Manager使用以下命令安装System.Reflection.TypeExtensions:

安装包System.Reflection.TypeExtensions-版本4.5.1

有关更多信息,请查看以下链接 System.Reflection.TypeExtensions