小编Jas*_*nan的帖子

Spock单元测试,groovy leftshift赋值抛出一个SpockExecutionException:数据提供者没有数据

我正在写一个spock单元测试,当我尝试使用groovy collect动态提供数据提供程序时,我得到以下错误

SpockExecutionException: Data provider has no data
Run Code Online (Sandbox Code Playgroud)

这是我可以提供的最简单的情况,抛出错误:

import spock.lang.Shared
import spock.lang.Specification

class SampleTest extends Specification {

    @Shared
    def someArray

    void setup() {
        someArray = ['a','b','c']
    }

    def "ensure that 'Data provider has no data' is not thrown"() {

        expect:
        columnA == columnB

        where:
        [columnA, columnB] << someArray.collect { value -> [value, value] }
    }
}
Run Code Online (Sandbox Code Playgroud)

groovy代码似乎工作.这是我在groovy控制台上的测试:

def someArray = ['a','b','c']
def test = someArray.collect { value -> [value, value] }
println test

[[a, a], [b, b], [c, c]] …
Run Code Online (Sandbox Code Playgroud)

java groovy junit unit-testing spock

3
推荐指数
1
解决办法
1692
查看次数

标签 统计

groovy ×1

java ×1

junit ×1

spock ×1

unit-testing ×1