加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

单元测试 – 在spock测试中创建不会作为测试运行的辅助方法

发布时间:2020-12-14 16:23:26 所属栏目:大数据 来源:网络整理
导读:我是一名 java开发人员,发现自己正在修改一个常规测试,所以如果我对基本的常规概念和术语一无所知,我会道歉(我想我应该在这里说闭合而不是方法吗?) 无论如何,我的愿望很简单,我想创建一些可以在现有的groovy测试中重用的辅助方法.诸如启动/停止某些测试仅需
我是一名 java开发人员,发现自己正在修改一个常规测试,所以如果我对基本的常规概念和术语一无所知,我会道歉(我想我应该在这里说闭合而不是方法吗?)

无论如何,我的愿望很简单,我想创建一些可以在现有的groovy测试中重用的辅助方法.诸如启动/停止某些测试仅需要的资源(并且会破坏其他测试)或者更快地执行常见测试步骤之类的事情.

但是,似乎每次我尝试创建一个这样的方法(闭包?)时它都会被spock作为测试运行,这会以有趣的方式打破其他测试.是否有一种简单的方法可以将方法添加到我的spock测试中而不将其作为测试运行?

它看起来像静态可能有效,但是我想要的方法会触及类的@shared变量,所以我不确定静态是最好的选择.

解决方法

我一直在广泛使用特征来编写单元测试.

每个特征都将测试功能引入规范.

trait Helper {
    def helpTests() {
        println "Starting Test"
        return 2
    }
}

class MySpec extends Specification
        implements Helper {
    def "my spec"() {
        when:
        def n = helpTests()

        then:
        n == 2
    }
}

显然,特征方法没有被执行.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读