Karate 使用空手道有梯度但没有(Java)-跑步者
我正在尝试使用空手道,因此创建了一个Karate 使用空手道有梯度但没有(Java)-跑步者,karate,Karate,我正在尝试使用空手道,因此创建了一个.feature和一个config.properties文件。当然,我不想在每个项目中检查空手道的来源,所以我想使用Gradle下载空手道,然后运行它 不幸的是,我无法使它工作。我的build.gradle文件如下所示: apply plugin: 'java' test { systemProperty "cucumber.options", System.properties.getProperty("cucumber.options")
.feature
和一个config.properties
文件。当然,我不想在每个项目中检查空手道的来源,所以我想使用Gradle下载空手道,然后运行它
不幸的是,我无法使它工作。我的build.gradle
文件如下所示:
apply plugin: 'java'
test {
systemProperty "cucumber.options", System.properties.getProperty("cucumber.options")
systemProperty "karate.env", System.properties.getProperty("karate.env")
outputs.upToDateWhen { false }
}
sourceSets {
test {
resources {
srcDir file('features')
include 'rest.feature'
}
}
}
dependencies {
testCompile 'com.intuit.karate:karate-junit4:0.7.0'
testCompile 'com.intuit.karate:karate-apache:0.7.0'
}
wrapper {
gradleVersion = 4.6
}
当我运行/gradlew test-Dtest=
时,.feature
文件只会被复制到build/resources/test
,而不是运行套件
你能告诉我如何正确设置它吗?我不想使用带有@RunWith(Karate.class)
注释的Java类,因为这在每个项目中都是不必要的锅炉板代码 我个人认为您应该使用Java类,因为您获得了的优势-但这只是我的2c
我无论如何都不是Gradle专家,但社区中的这个Gradle示例可能会帮助您找出是否遗漏了任何内容:
它有一些不必要的依赖项,您当然应该忽略它们
编辑:刚刚意识到您希望在没有任何Java运行程序的情况下运行该功能,很抱歉,这在命令行中是不可能的。您可以从IntelliJ和Eclipse“右键单击并运行”(安装了正确的插件,请参阅文档)——这是大多数团队每天都做的事情
如果您做了一些研究,您应该能够编写一个Java类,它可以接受命令行arg或系统属性并运行您指定的功能。同样,Java运行程序要方便得多(输入更少),或者只使用IDE支持