【问题标题】:NullReferenceException when generating Microsoft fakes preventing compilation生成 Microsoft 伪造品时出现 NullReferenceException 阻止编译
【发布时间】:2020-09-09 22:49:58
【问题描述】:

我有一个使用 Fakes 的单元测试项目,构建它失败但没有产生任何错误或警告。当设置为正常详细程度时,构建输出显示 0 个错误和 0 个警告:

1>Build FAILED.
1>    0 Warning(s)
1>    0 Error(s)
1>
1>Time Elapsed 00:00:05.27
========== Build: 0 succeeded, 1 failed, 13 up-to-date, 0 skipped ==========

在构建输出的早期查看时,我可以发现它失败的时间:

1>    4:start> "C:\Program Files (x86)\Microsoft Visual 
Studio\2019\Enterprise\MSBuild\Microsoft\VisualStudio\v16.0\Fakes\fakes.exe" @"Path\To\My\CsProj\obj\Debug\net48\Fakes\m\f.args"
1>    Microsoft Fakes v16.600.320.22103 - .NET v4.0.30319
1>    Copyright (c) Microsoft Corporation 2007-2010. All rights reserved.
1>
1>    fakes
1>    fakes generator 0 errors, 0 warnings
1>
1>    Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object.
1>       at Microsoft.QualityTools.Testing.Fakes.CodeGenerator.ExtendedReflection.Metadata.Roslyn.RoslynAssemblyImpl.get_TypeDefinitions()
1>       at Microsoft.QualityTools.Testing.Fakes.Engine.FakesDriver.TryGetTypeDefinitions(AssemblyEx assembly, ICountable`1& typeDefinitions)
1>       at Microsoft.QualityTools.Testing.Fakes.Engine.FakesDriver.ExecuteProtected()
1>       at Microsoft.QualityTools.Testing.Fakes.Engine.FakesDriver.Execute()
1>       at Microsoft.QualityTools.Testing.Fakes.FakesProgram.LaunchSingleFakes(FakesConsoleOptions
options)
1>       at Microsoft.QualityTools.Testing.Fakes.FakesProgram.Main(String[] args)
1>       at Microsoft.QualityTools.Testing.Fakes.Program.Main(String[] args)
1>    4:end> Fakes\mscorlib.fakes AccessViolation (-1073741819 - 0xc0000005)
1>
1>
1>      Fakes compilation FAILED - 1.7001673s
1>    result: unexpected exception occured (-1002 - 0xfffffc16)
1>    Fakes assemblies:

奇怪的是这个项目可以在我以前使用的计算机上正确编译。

【问题讨论】:

    标签: c# visual-studio nullreferenceexception microsoft-fakes


    【解决方案1】:

    这似乎是 Visual Studio 2019 版本 16.6.0 中的一个错误。

    根据此错误报告: https://developercommunity.visualstudio.com/content/problem/1046515/visual-studio-2019-1660-microsoft-fakes-issue.html

    这似乎也与我的问题相对应,因为我的旧电脑使用的是旧版本的 VS2019,而我最新的电脑使用的是最新的 VS 2019 版本。

    【讨论】:

      猜你喜欢
      • 2021-01-29
      • 1970-01-01
      • 1970-01-01
      • 2019-11-13
      • 2015-09-03
      • 2014-08-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多