我遇到过几次一个问题,但从未找到一个好的答案。假设我有一个类如下所示,其中一个方法调用同一类中的另一个方法:
public class Foo
{
public int Bar()
{
if (Baz())
{
return 1;
}
else
{
return 2;
}
}
public virtual bool Baz()
{
// behavior to be mocked
}
}
我希望对方法Bar()的行为进行单元测试,这取决于Baz()的返回值。如果Baz()在另一个类中,我会调用PartialMock在那个类上设置模拟行为,但是当PartialMock用于测试类本身时似乎不起作用。有没有简单的方法来解决这个问题?我错过了什么吗?
我正在使用Rhino Mocks 3.5和.NET 2.0。