• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

让 gradle 和 cucumber 工作?

用户头像
it1352
帮助3

问题说明

让 gradle 干净地使用 cucumber 是一个挑战.我想让 gradle build 来编译和运行测试,但到目前为止我还没有成功.

Getting gradle to work with cucumber cleanly is something of a challenge. I want to get gradle build to compile and run the tests, but so far I've had no success.

plugins {
   id "com.github.samueltbrown.cucumber" version "0.9"
}
apply plugin: 'java'
apply plugin: 'idea'


def JAVA_WEBSOCKET_VERSION = '1.2.1'
def CUCUMBER_VERSION = '1.2.4'
jar {
    manifest {
        attributes 'Implementation-Title': 'Java-WebSocket',
                   'Implementation-Version': JAVA_WEBSOCKET_VERSION
    }
}

repositories {
    jcenter()
}

dependencies {
    testCompile "info.cukes:cucumber-java:$CUCUMBER_VERSION"
    testCompile "info.cukes:cucumber-junit:$CUCUMBER_VERSION"
    testCompile 'junit:junit:4. '
}

task wrapper(type: Wrapper) {
    gradleVersion = '2.9'
}

目前我收到很多关于黄瓜使用的注释(@Given@Then@After)的错误.我想要的是在不使用 JavaExec 的情况下干净地构建项目.这是可能的,还是对 gradle 或 cucumber 有特定的限制来防止这种情况发生?

Currently I get many errors about the annotations (@Given, @Then, @After) that cucumber uses. What I want is to build the project cleanly without using JavaExec. Is this possible or is there a specific limitation to either gradle or cucumber that prevents this?

正确答案

#1
dependencies {

    testCompile 'info.cukes:cucumber-jvm:1 '
    testCompile 'info.cukes:cucumber-jvm-deps:1 '
    testCompile 'info.cukes:cucumber-java:1 '
    testCompile 'info.cukes:cucumber-junit:1 '
    testCompile 'info.cukes:cucumber-core:1 '

}

我创建了另一个函数来执行测试

I created another function to execute test

test { 

    ignoreFailures = true


    // show standard out and standard error of the test JVM(s) on the console
    testLogging.showStandardStreams = true

    // set heap size for the test JVM(s)
    minHeapSize = "128m"
    maxHeapSize = "512m"

    // set JVM arguments for the test JVM(s)
    jvmArgs '-XX:MaxPermSize=256m'

    // listen to events in the test execution lifecycle
    beforeTest { descriptor ->
        logger.lifecycle("Running test: "   descriptor)
    }


    // explicitly include or exclude tests( Add Package directly)
    exclude "com/**/***/rest/junit**"
    exclude "com/**/***/db/junit**"

    reports.junitXml.enabled = false
    reports.html.enabled = false
}

现在从命令行调用这个函数来执行测试

now Call this function from command line for test execution

task "forceTest" { 
    dependsOn "clean", "cleanTest", "test"
}

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /reply/detail/tangcbjfb
系列文章
更多 icon
同类精品
更多 icon
继续加载