我们有一个项目,最近已经从VS2010(使用.net Framework 3.5)编写到VS2012(使用.net Framework 4)。我们使用TFS,因此可以使用较旧的版本。
在调试VS2010版本的构建断点时,<TestMethod()>
方法将起作用,对被调用代码进行操作和断点操作,并从头到尾逐步执行代码。
在2012版本中,断点仅适用于<TestMethod()>
代码。一旦代码离开<TestMethod()>
区域,事情就会变成奇数。单步执行代码似乎只是步骤到代码中的随机行。值奇怪地解决了,调试器似乎在很大程度上随机地向前跳过代码。一旦调试器返回到<TestMethod()>
代码区域,事情就会恢复正常,即使调试期间显示的值都很奇怪,也会从被调用的函数返回正确的结果。
我真的无法想象如何更好地描述发生了什么。我不负责构建软件,并且那些不知道任何他们已经改变的人可能会导致这个问题。
对于任何人来说,这听起来是否足够熟悉他们可以建议可能已经更改了哪些设置以产生此行为,或者我需要在.net 4下设置以便让单元测试再次工作?
答案 0 :(得分:0)
当调试器使用的源代码与用于编译正在调试的程序集的源代码不同时,通常会发生这种情况。