使用Moles模拟静态构造函数 - 遇到用户定义的断点

时间:2011-11-21 15:29:12

标签: c# static moles

我在遗留项目中使用Moles,我需要使用静态构造函数来模拟一个类,它在测试环境中做了我不想要的东西。没问题 - MolesEraseStaticConstructor属性可以解救,对吧?嗯,不太好......

当我尝试运行测试时,我得到一个弹出窗口:“Microsoft.Moles.VsHost遇到了用户定义的断点。”描述:“应用程序中的断点表示程序错误。关闭此对话框后,应用程序将继续运行,但可能处于不稳定状态。”

消息的最后一部分是真的:如果我选择“关闭”,有时候测试会失败,有时却没有 - 而有时它会被中止。

如果我选择Debug,我会转到一些汇编代码,我无法弄清楚它的来源。

我怎样才能更多地了解这里出了什么问题?

(有点小问题:我试图在静态构造函数中模拟一个类来尝试以这种方式解决它,但它似乎不起作用。我是对的,假设你不能嘲笑使用Moles的静态构造函数内的东西?)

1 个答案:

答案 0 :(得分:1)

我也遇到了这个问题。

我有一个#ifdef DEBUG,并在其中调用System.Diagnostics.Debugger.Break()

所以......真的有一个用户定义的断点。我真傻!