1
我一直想弄清楚通過groovy測試教程存根和嘲弄無濟於事。我試圖對這個方法進行存根(或者嘲笑,我對術語不太確定),但是我無法弄清楚如何真正獲得正確的語法。我希望得到一些幫助。我使用Groovy 2.4.5您如何模擬GroovyTestCase中的方法?
public class foo {
public static void main(String[] args){
method1();
}
public static void method1(){
//do stuff
Object baz = new Object();
method2(baz);
}
public static void method2(Object baz){
//do stuff
}
}
class FooTest extends groovy.util.GroovyTestCase {
void testMainLoop(){
def stubMethod2 = new StubFor(foo);
stubMethod2.ignore.method2
stubMethod2.use {
foo.method1();
}
}
}
此代碼引發錯誤:
groovy.lang.MissingPropertyException: No such property: method2 for class: groovy.mock.interceptor.Ignore
at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:53)
at org.codehaus.groovy.runtime.callsite.GetEffectivePogoPropertySite.getProperty(GetEffectivePogoPropertySite.java:87)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGetProperty(AbstractCallSite.java:296)
at fooTest.testMainLoop(fooTest.groovy:14)
我正在使用的失敗代碼與我在本教程中看到的代碼類似:http://www.groovy-lang.org/testing.html#_mockfor_and_stubfor這就是爲什麼我很困惑 –