基于gradle的Groovy之Spock测试框架入门四
这个篇章再介绍点常用的用于spock的装饰器
一、Rollup & Unroll
从字面意思来理解,就是卷起 & 展开,所以我们就很好理解这两个注释是什么意思了,主要是用在多参数的用例中,我们来用例子实践一下,还是之前文章的例子
def "maximum of #a & #b to numbers should #c"(){ when: def sum = Math.max(a, b) def result = c then: sum == result where: a|b|c 1|3|3 7|4|7 0|0|0 } @Rollup def "maximum of rollup test"(){ when: def sum = Math.max(a, b) def result = c then: sum == result where: a|b|c 1|3|3 7|4|7 0|0|0 }
这有两个例子,一个是加了rollup的。结果会是怎么样呢?运行后结果如下:
可以看到, 加了@Rollup的用例会将参数化用例显示为一条。要注意的是:现在默认都是unroll了,所有用例中可以不用特别加@Unroll
二、Ignore
用例的跳过,相信大家在用不同框架都会遇到,实例说明下:
@Ignore def "test_ignore"(){ expect: 1==1 }
@IgnoreIf({System.getProperty("os.name").toLowerCase().contains("windows")}) def "test_ignore_if"(){ expect: 1==1 }
不运行
除了上面3个,还有一些内置关键字,比如:@Requires @PendingFeature @Stepwise @Timeout @Retry @Use 等等,如果有需要的可以点击连接查看官网。
三、并发
并想根据spock 并发文档试着做一下:https://spockframework.org/spock/docs/2.0/all_in_one.html#parallel-execution
结果没成功。试着去查了下,很多还是没解决。弃之.............
Email:362299908@qq.com