使用Spock使用Unroll在测试名称中添加方法调用

时间:2015-05-18 15:18:36

标签: groovy spock unroll

我有一个代码,我想将方法​​调用值放在方法的名称中。

        @Unroll
        def 'check #file other text'() {
        setup:
        def file = allProperties.keySet().getAt(0)
        ...
        where:
        ...

现在我创建了一个特殊变量,其目的仅在于命名方法。我可以这样做:

        static def allProperties
        def setupSpec(){
           allProperties== [1: 'asd', 2: 'ddd']
        }
        @Unroll
        def 'check #allProperties.keySet().getAt(0) other text'() {
        ....
        where:
        ...

已编辑:添加setupSpec()

1 个答案:

答案 0 :(得分:4)

Unroll支持属性访问或零arg方法。所以你可以:

@Unroll
def "check #allProperties.keySet().first() other text"() { .. }

提供allProperties是类级变量或@Shared变量,或在where:块下提及。