Spock阻挡嘲笑以及在哪里接线

时间:2016-05-06 12:43:37

标签: unit-testing groovy mocking spock

我已经看到Spock测试了哪些模拟器被连接起来&在given块中配置(这对我来说最有意义),以及让测试通过的唯一方法需要我在{{1}内连接/配置模拟的情况阻止,这对我来说简直太愚蠢了。后者的一个例子是问题that I asked some time ago

所以我问:在thengiven中确定 实际连接/配置模拟的内容是什么?我真的希望答案不仅仅是" 继续玩它直到它起作用",因为这对我的小机器人大脑来说太不确定了。

1 个答案:

答案 0 :(得分:2)

模拟和存根应该在setup / given块中实例化,或者甚至在setup()方法中实例化,如果您打算在多个测试中使用它们并希望减少样板。

在我看来,Mocks和Stubs的行为应该在最狭隘的范围内定义,这是有道理的。 then通常最有意义,但定义您并不真正关心密切检查的一般行为可以放在setup / given块中,甚至放在{{1}中方法。