我正在使用Xunit进行单元测试。该应用程序正在使用ASP.NET Core。调试时,我注意到一些奇怪的行为:
实际方法(不是测试方法)中的变量在不应有的情况下显示为空,并且在调试一段时间后具有值
另一个示例是在if语句中调试时,即使if条件返回false,这意味着它不应该进入if语句内部,调试器仍然可以进入内部。
当断点到达helper方法时,它会立即忽略helper方法并跳至下一行。但是过了一会儿,它又回到了那个辅助方法。
有人以前见过这种行为吗?
答案 0 :(得分:1)
我发现了问题。这是因为runsettings.json文件包含一些可能会破坏调试器的属性。删除以下代码对我有用。
<DataCollector friendlyName="Code Coverage" uri="datacollector://Microsoft/CodeCoverage/2.0" assemblyQualifiedName="Microsoft.VisualStudio.Coverage.DynamicCoverageDataCollector, Microsoft.VisualStudio.TraceCollector, Version=11.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
</DataCollector>