该案例可在专用环境中重现(但可能不限于),包括Windows 10, JustMock R3.2021, Visual Studio 2019和。net 5。当分析器被启用时,Visual Studio会在测试发现方面出现问题,并报告“堆栈溢出”异常。这同样适用于使用Azure Function项目构建解决方案。
从测试执行时捕获的内存转储中的CLR堆栈:
000000CD7CE038D0 00007ffafb22d3b6 [GCFrame: 000000CD7CE038D0] 000000CD7CE03A40 00007ffafb22d3b6 [PrestubMethodFrame: 000000cd7ce0a40] 000000CD7CE0A530 00007ffafb22d3b6 [PrestubMethodFrame: 000000CD7CE0A530] System.Runtime.Loader.AssemblyLoadContext.OnAssemblyResolve(System.Reflection. System.Reflection.)RuntimeAssembly, System.String) 000000CD7CE0A988 00007ffafb22d3b6 [GCFrame: 000000CD7CE0A988] 000000CD7CE0E3C0 00007ffafb22d3b6 [PrestubMethodFrame: 000000CD7CE0E3C0] System.Runtime.Loader.AssemblyLoadContext.OnAssemblyResolve(System.Reflection. string)RuntimeAssembly, System.String)…(为简洁而省略)000000CD7CF72548 00007ffafb22d3b6 [GCFrame: 000000CD7CF72548] 000000CD7CF75F80 00007ffafb22d3b6 [PrestubMethodFrame: 000000CD7CF75F80] System.Runtime.Loader.AssemblyLoadContext.OnAssemblyResolve(System.Reflection. System.Reflection.)RuntimeAssembly, System.String) 000000CD7CF763D8 00007ffafb22d3b6 [GCFrame: 000000CD7CF763D8] 000000CD7CF79E10 00007ffafb22d3b6 [PrestubMethodFrame: 000000CD7CF79E10] System.Runtime.Loader.AssemblyLoadContext.OnAssemblyResolve(System.Reflection. System.Reflection.)RuntimeAssembly, System. string) 000000CD7CF7A268 00007ffafb22d3b6 [GCFrame: 000000CD7CF7A268] 000000CD7CF7DCA0 00007ffafb22d3b6 [PrestubMethodFrame: 000000CD7CF7DCA0] System. collections . general . dictionary ' 2[[System. collections . general . dictionary]__Canon, System.Private.CoreLib]、[系统。__Canon, System. private . corelib]]..ctor() 000000CD7CF7DF10 00007FFA9B787B2A System. appcontext .cctor() [/_/src/System. private . corelib /shared/System/AppContext.cs @ 16] 000000CD7CF7E340 00007ffafb2b6c93 [GCFrame: 000000CD7CF7E340] 000000CD7CF7ED18 00007ffafb2b6c93 [HelperMethodFrame: 000000CD7CF7ED18] 000000CD7CF7EE20 00007FFA9B7876B9 System. appcontext . cn]设置(Char**, Char**, Int32)