}
String toString(){
return "hello ${_info}"
}
}
很简单的代码,当然测试也会很轻易的通过。其实,对于这种比较简单的问题,groovy与java的解决方案是差不多的。但在Mock Object方面,groovy更胜一筹。
java的mock解决方案比较流行的有easymock和jMock。对于easymock,如果需要mock类而不是接口,则需要引入easymockclassextension.jar。在groovy中,使用gmock会简单的多。
关于GMock的使用,有两种方法。一是直接继承自GMockTestCase,二是在类上使用@WithGMock注解。GMock使用闭包来简化操作。下面给出简单示例:
view plaincopy to clipboardprint?
@WithGMock
public class NewTest extends GroovyTestCase{
@Test
public void testMock(){
def gmc = new GMockController()
def mockLoader = gmc.mock()
mockLoader.load('key').returns('value')
gmc.play {
assertEquals "value", mockLoader.load('key')
}
}
}
@WithGMock
文章来源于领测软件测试网 https://www.ltesting.net/