如何让 gradle 和 cucumber 一起工作?

2024-04-18

让 gradle 干净利落地使用 Cucumber 是一个挑战。我想要得到gradle build编译并运行测试,但到目前为止我还没有成功。

构建.gradle

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 是否有特定的限制来防止这种情况发生?


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+'

}

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

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
}

现在从命令行调用此函数进行测试执行

task "forceTest" { 
    dependsOn "clean", "cleanTest", "test"
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何让 gradle 和 cucumber 一起工作? 的相关文章

随机推荐