.net 7 xUnit 调试器在 Visual Studio 2022 中未命中断点

.net 7 xUnit Debugger Does Not Hit a Breakpoint in Visual Studio 2022

提问人:Mike Levytskyi 提问时间:10/1/2023 更新时间:10/1/2023 访问量:47

问:

规格:Win 10、Visual Studio Pro 2022 v17.7.4; .Net SDK v7.0.4 我有一个解决方案,里面有一堆不同的项目,其中一个是net7.0 xUnit Test proj。(转换自 netstandard 2.0) 当我设置断点来调试测试时,它的行为就像它只是运行测试而不是调试它。

  1. 调试器似乎已启动,但断点未命中。测试产生结果(构建调试后 -> .pdb 文件位于 bin -> Debug -> net7.0 目录中,所以我假设所有符号都已加载)
  2. 我尝试创建NUnit .net7.0测试->相同的行为。
  3. 我尝试创建 xUnit .net48 测试项目 ->奇怪的调试器按预期工作。
  4. 我尝试将Debug.WriteLine(“In Debug!”)。调试输出不打印消息。
  5. 将 xunit.runner.visualstudio 更新到 2.5.1。没有帮助。
  6. 在存储库上运行 git clean -xdf,删除所有 VS 临时文件,通过安装程序修复 VS,并重新安装 .net SDK(我想知道,当我运行 sdk 安装程序时,它是否可能检测到我已经使用了最新版本并且实际上没有重新安装任何东西? 但我怀疑这是问题所在)->所以这一切都无济于事。

我把这些留到最后,因为这些是人们遇到的其他 Stack Overflow 帖子中的解决方案 7. 我检查了调试配置文件是否丢失;事实并非如此。我创建了一个新的配置文件来确保。没有帮助。 8. 首先,在 VS Tools -> Options -> Debugging -> General 中禁用所有调试设置。没有帮助。全部启用,无济于事。 9. 调试期间启用/禁用热重载。 10. launchSettings.json 不在项目中。

想法:在这一点上,我认为要么是一些缓存数据在干扰,要么是 .net 错误。

把你的想法扔给我。谢谢!

.NET Visual-Studio 调试 .net-core 断点

评论

1赞 Paweł Łukasik 10/1/2023
“所以我假设所有符号都已加载”,如果您在调试中运行 - 检查“模块”面板以查看符号是否实际加载。如果你可以在一个较小的项目(第 2 点)上重现它,请向它提供你的问题,以便我们可以测试它是否可重现。

答: 暂无答案