【发布时间】: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