以下示例代码:
class MySpec extends spock.lang.Specification {
def "My test"(int b) {
given:
def a = 1
expect:
b > a
where:
b << 2..4
}
}
抛出以下编译错误:“where-blocks只能包含参数化(例如'salary&lt;&lt; [1000,5000,9000]; salaryk = salary / 1000')”
但使用List而不是Range:
where:
b << [2,3,4]
按预期编译并运行正常。
我还能以某种方式指定范围吗?
答案 0 :(得分:9)
使用
where:
b << (2..4)
测试也可以如下优化。注意测试没有参数。
def "My test"() {
expect:
b > a
where:
a = 1
b << (2..4)
}