问题
在调试时,只有this
变量可在Locals中显示,其它局部变量无法在Locals或Watch中查看,但可以在Visual Studio的Intermediate Window中重新求值。
简述
我在为我编写的代码进行Xunit测试。我正在测试的库目标是ASP.NET Core RC1。这是我的 project.json
:
{
"authors": [ "Matthew Abbott" ],
"commands": {
"test": "xunit.runner.dnx"
},
"description": "Provides tests for the Fx.Content.Composer package",
"dependencies": {
"xunit": "2.1.0-rc1-build3168",
"xunit.runner.dnx": "2.1.0-rc1-build204",
"Fx.Content.Composer": ""
},
"frameworks": {
"dnx451": { },
"dnxcore50": {
"dependencies": {
"System.Runtime": "4.0.21-beta-23516"
}
}
},
"licenseUrl": "",
"projectUrl": "",
"tags": [ "" ],
"version": "1.0.0-*"
}
当我调试单元测试时 (我使用 Visual Studio 的内置测试功能),我可以设置断点,但是局部/观察窗口不允许我检查局部变量声明。此外,我也无法获得这些局部变量的变量工具提示。
如果我将语句复制并粘贴到 Intermediate 中,则它们会添加到作用域中,但我不能轻松地进行调试。
我已尝试的事情
- 确保我是在Debug模式下编译
- 禁用JIT优化
- 重置我的Visual Studio设置
需要注意的事项:
- 我最近安装了Visual Studio 2015更新2
- 我已经重新启动IDE多次,但没有成功
- 我已经重新启动了我的计算机多次,但没有成功
- 没有明确绑定到单元测试调试会话 - 当我按F5运行时,它们也失败了
非常感谢您的任何帮助!
更新 根据Victor的评论,我尝试从单元测试中进入一个方法进行调试,最初一个参数可以在范围内使用,但是稍后定义的变量未定义。