什么_(下划线)在Spock测试中意味着什么?

时间:2014-12-10 07:41:07

标签: testing groovy spock

在其中一个Spock测试中,我看到了一个奇怪的情况:

0 * someInstance._

这是什么意思?

2 个答案:

答案 0 :(得分:9)

_是一个通配符,任何对象。请参阅here,了解其完整实施情况以及文档的here_它用于检查一个方法的调用,哪个参数无关紧要,然后它看起来像:

1 * obj.method(1, _)

在这种特殊情况下,检查实例method上的方法obj是否仅使用1作为第一个参数调用一次,任何作为第二个参数。

答案 1 :(得分:0)

编辑:我的回答并未解决运营商问题,而是指无关的问题。正确的答案可以在上面看到


_通常用于表示现在遵循或提供可见性指令的Groovy/Javascript等语言中的私有内容/变量。

虽然你仍然可以从类或实例外部访问它们,但开发人员试图告诉你这个变量只能在内部使用。