Fra*_*ois 5 groovy getter-setter spock
Groovy 为您所有类的字段生成getter和setter.所以当你这样做时:
class Foo {
final bar
}
new Foo().bar
Run Code Online (Sandbox Code Playgroud)
你实际上正在调用生成的方法Foo.getBar().
我有一个Spock规范,喜欢检查这样生成的getter的调用:
def "some spock test"() {
given: def fooMock = Mock(Foo)
when: someFunction(fooMock)
then: 1 * fooMock.getBar()
}
Run Code Online (Sandbox Code Playgroud)
someFunction()不fooMock.bar,但我总是
Too few invocations for:
1 * fooMock.getBar() (0 invocations)
Run Code Online (Sandbox Code Playgroud)
1 * fooMock.bar也行不通.如何检查测试中是否bar已读取Foo?如果我省略final,它可以工作,但这是一个糟糕的解决方案......
| 归档时间: |
|
| 查看次数: |
1762 次 |
| 最近记录: |