在调试包含大字符串的xunit测试时不会出现断点

时间:2018-08-29 15:49:42

标签: c# .net debugging xunit

我有一个测试,该测试使用一些Base64编码的字符串作为方法的参数。测试运行并通过(如果将方法修改为失败状态,则测试失败)。关键是测试框架可以按预期执行

当我尝试通过Visual Studio(或VSCode)调试测试时,调试器将启动,加载符号,然后退出,并显示通过状态。没有断点。

我只是通过尝试将一个大字符串识别为错误,一次删除一个测试用例,直到我能够成功达到断点为止。

此方法重现该问题。即使未使用它,也请注释掉b64,您应该能够通过调试器击中断点,取消注释并断点失败。

这在xunit 2.3.1和2.4.0中发生;不确定它是否是xuint,但我正在尝试找出可以调试此方法的方法。

运行dotnet new xunit并将测试放到https://gist.github.com/fuzzzerd/8347a8609fd1ccabdfaeea564d42a976中(对于问题正文而言,剪裁太大)

1 个答案:

答案 0 :(得分:0)

好像我遇到了这个问题:https://github.com/dotnet/roslyn/issues/20118。没有解决方法,但是从文件加载确实可以解决此问题。