Unit testing 什么是>&燃气轮机;1*在这个groovy语句中是什么意思?

Unit testing 什么是>&燃气轮机;1*在这个groovy语句中是什么意思?,unit-testing,grails,groovy,spock,Unit Testing,Grails,Groovy,Spock,我正在从事grails/groovy项目,在阅读他们的测试文档时,遇到了这行代码 1 * myService.prova() >> { true } 我无法理解1*在这里意味着什么,因为>>是右移运算符,它在这里意味着什么?我找了这么多,但找不到任何适当的解释。 这不是groovy本身,而是一个名为Spock的测试框架(它在groovy开发人员中非常流行,理由很充分:-) 这个表达式特别是用来指示Spock,它应该期望在myService中只调用一次方法prova,并且应该模拟该调

我正在从事grails/groovy项目,在阅读他们的测试文档时,遇到了这行代码

1 * myService.prova() >> { true }
我无法理解1*在这里意味着什么,因为>>是右移运算符,它在这里意味着什么?我找了这么多,但找不到任何适当的解释。

这不是groovy本身,而是一个名为Spock的测试框架(它在groovy开发人员中非常流行,理由很充分:-)

这个表达式特别是用来指示Spock,它应该期望在
myService
中只调用一次方法
prova
,并且应该模拟该调用以返回
true
。请参阅,特别是“组合模拟和存根”一节。

我的回答()中的链接非常详尽地介绍了如何使用Spock进行模拟。还有一个是指同一个指南(链接似乎断开了)。在Grails指南中,您还可以找到如何使用元编程进行模拟,但如果您已经在使用Spock,那么我会尽量坚持使用Spock。