如何使用spock框架w/groovy在多个测试之间共享设置

Jim*_*007 5 groovy spock

我是spock的新手并注意到了设置:规范中的步骤是针对特定测试的本地范围.我如何在这些灯具上共享设置,类似于传统的junit方法?

谢谢!

def "setup with spock"() {
    setup:
    def message = new FooMessage()
    def sut = new FooProcessor()
    def builder = Mock(FooBuilder)
    sut.setBuilder(builder)

    when:
    builder.buildFooUsing(_) >> {"bar"}
    def result = sut.process(message)

    then:
    assert result == "bar"
  }
Run Code Online (Sandbox Code Playgroud)

Ara*_*ram 4

如果您想在测试之间共享单个对象,您应该使用 setupSpec() 或查看 @Shared 注释