【发布时间】:2015-05-06 04:38:58
【问题描述】:
为简单起见,让我们举一个非常简单的类:
public class TestingClass {
public void method1(){
System.out.println("Running method 1");
method2();
}
public void method2(){
System.out.println("Running method 2");
}
}
现在我正在编写一个简单的测试,它检查当我们调用 method1() 时,method2() 是否被调用:
class TestingClassSpec extends Specification {
void "method2() is invoked by method1()"() {
given:
def tesingClass = new TestingClass()
when:
tesingClass.method1()
then:
1 * tesingClass.method2()
}
}
通过执行此测试,我收到以下错误:
运行方式一 运行方式二
调用太少:
1 * tesingClass.method2()(0 次调用)
为什么我会收到此错误?打印的日志显示method2() 被调用。
【问题讨论】:
标签: spock