given: "a mars rover at position 1,2 and direction is north"
复制代码
除了上面的例子里看到的,Spock 还提供了 cleanup 、 expect 、 where 这三个 block。详细信息可以看看它的文档。
因为 Spock 强制要求使用 block 来组织测试代码,这样就可以强迫我们写出结构化的代码,更加便于阅读。
(3) 使用 data table 构造参数化测试
对于参数化测试,我们再来看一个例子。
def "should move mars rover from position 1,2 forward to #movedPosition.x,#movedPosition.y when direction is #direction and move length is #length"() {