我正在尝试测试一个方法,该方法调用类中的其他几个方法。我希望将其他方法存根,这样它们就不会被执行。我认为这是一个使用'stub‘的简单问题。例如:
class Fubar {
void fu() {
// . . .
bar();
}
void bar() {
// . . .
}
void testFu() {
Fubar fubar = new Fubar();
stub (method (Fubar.class, "bar"));
replay();
fubar.fu();
verifyAll();
} 但这似乎不起作用。它在“bar”方法中终止,而我原本以为它基本上是无操作的。我是不是用错了?
谢谢。
发布于 2011-05-28 01:52:00
这种方法的主要问题是正在测试的fubar实例与存根没有任何关系。
我建议您使用use createPartialMock(),它允许您创建Fubar的新实例,并在那里模拟仅bar()方法。这样您就可以测试您的fubar实例(由createPartialMock()生成)并记录bar()的行为。
https://stackoverflow.com/questions/6155315
复制相似问题