如何使用命令行在 Gradle 上运行空手道测试
Posted
技术标签:
【中文标题】如何使用命令行在 Gradle 上运行空手道测试【英文标题】:How to run Karate Test on Gradle Using Command line 【发布时间】:2018-11-03 05:22:02 【问题描述】:我正在查看空手道文档: https://github.com/intuit/karate#command-line
我的文件如下:
跑步者类:
import org.junit.runner.RunWith;
import com.intuit.karate.junit4.Karate;
import cucumber.api.CucumberOptions;
@RunWith(Karate.class)
@CucumberOptions(features = "classpath:feature/country.feature")
public class APITest
把它放到我的 build.gradle 中:
test
// pull cucumber options into the cucumber jvm
systemProperty "cucumber.options", System.properties.getProperty("cucumber.options")
// pull karate options into the jvm
systemProperty "karate.env", System.properties.getProperty("karate.env")
// ensure tests are always run
outputs.upToDateWhen false
我正在尝试像这样运行 gradle:
./gradlew test -Dtest=APITest
但我收到了这样的回复:
Rafaels-MacBook-Pro:TestProject rafaelpaz$ ./gradlew test -Dtest=APITest
:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:compileTestJava
:processTestResources UP-TO-DATE
:testClasses
:test
但是,我看不到我的测试是否通过。我做错了什么?
Gradle 版本:2.14.1
【问题讨论】:
您确定您拥有运行单个测试的语法权限吗:***.com/questions/22505533/… @PeterThomas 再次感谢您帮助彼得,我之前尝试过这些命令并且我能够成功,但只有使用 JUnit,使用空手道我会收到如下错误:FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':test'. > No tests found for given includes: [org.gradle.APITest] * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
这是我我做错了,但仍然没有意识到是什么
对不起,我帮不上忙。男人请切换到maven。我将再次在 Twitter 上寻求帮助
@PeterThomas 所有好伙伴,感谢您的帮助!我仍然会进行更多测试!干杯
【参考方案1】:
https://github.com/SreecharanShroff/demos/blob/master/gradle_karate_demo.zip 有一个工作的 gradle karate 演示项目,请根据您的要求更改 .feature 文件。 使用:
gradle 清洁测试
如果您需要更多信息,请告诉我
谢谢,
Sreecharan Shroff
【讨论】:
这就是我真正需要的,Sreecharan!十分感谢你的帮助!我接受了你的回答!干杯伙伴! 嗨@Sreecharan Shroff,我的测试运行成功,但是当我使用 gradle 命令行运行我的测试时,我没有看到生成的报告 html 文件,如果您知道这一点,请提供帮助。跨度> 在 gradle 中,默认情况下报告在 projectFolder/build/reports 中生成。我尝试使用空手道 0.9.2,报告生成正确。您可以从上面的链接尝试我的 gradle karate 项目。请附上您的项目以重现该问题。以上是关于如何使用命令行在 Gradle 上运行空手道测试的主要内容,如果未能解决你的问题,请参考以下文章
如何从命令行在 Windows 上运行 .class 文件?