首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用命令行中的Spock

如何使用命令行中的Spock
EN

Stack Overflow用户
提问于 2016-09-18 22:44:52
回答 1查看 1.3K关注 0票数 1

我正在编写一组groovy脚本,作为Jenkins管道库的一部分。目前,我正在使用普通的老JUnit来测试它们,但是我想切换到Spock。我只是通过调用下面的groovy脚本从命令行运行测试。

代码语言:javascript
复制
import groovy.util.AllTestSuite
import junit.textui.TestRunner

System.setProperty(AllTestSuite.SYSPROP_TEST_DIR, "./tests")
System.setProperty(AllTestSuite.SYSPROP_TEST_PATTERN, "**/*Test.groovy")

TestRunner.run(AllTestSuite.suite())

我试图弄清楚运行Spock规范的等价脚本是什么。我的第一次尝试是将SYSPROP_TEST_PATTERN切换到"**/*Spec.groovy。我编写了一个...Spec.groovy文件,它位于./tests下面,如下所示:

代码语言:javascript
复制
@Grab(group='org.spockframework', module='spock-core', version='1.0-groovy-2.3')
import spock.lang.*

class UtilsSpec extends Specification {

  def "Just testing"() {

    expect:
      1 + 1 == 2

  }
}

当我调用我的groovy脚本时,我得到:

/SourcCode/jenkins/pipeline-utils/tests/JustTestingSpec.groovy :不知道如何将java.lang.RuntimeException作为JUnit测试来处理

这事儿可以理解。我需要使用Sputnik,但我已经查看了Spock和Sputnik源代码,以及Spock示例项目,但这些都假设您使用的是maven或gradle。我想不出直接调用人造卫星的正确方法。有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2016-09-29 14:02:58

尽管您要求的内容是可能的,而且BalRog已经提出了解决方案,但从长远来看,最好只使用Gradle或Maven从命令行运行您的测试。

您将遇到的所有Jenkins教程都将讨论Maven和/或Gradle,因此使用构建系统比使用自定义脚本更有意义。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39563338

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档