我一直在试图找出这一个,我如何测试一个私有方法与我正在测试的类中的rhino mocks调用。所以我的课堂会是这样的。Rhino Mocks验证私有方法是从公共方法调用
Public class Foo
{
public bool DoSomething()
{
if(somevalue)
{
//DoSomething;
}
else
{
ReportFailure("Failure");
}
}
private void ReportFailure(string message)
{
//DoSomeStuff;
}
}
所以我的单元测试是在Foo类和方法DoSomething的()我要检查并确保一定的消息传递给ReportFailure如果someValue中是假的,用犀牛嘲笑。
同意,你应该通过公共接口设计你的类的可测性。如果您无法访问需要验证的内部状态,则需要更强大的公共接口。 – darthtrevino 2010-06-17 02:33:49
我完全同意黑盒原理,但是我知道我的一些测试证实我正在测试的类在方法调用后已在内部正确更新。 – Flynn1179 2010-06-24 13:28:07