gradle - 我如何才能在 intelliJ 中使用 gradle 进行黄瓜报告?
问题描述
我想要一些非常漂亮的黄瓜报告,例如(https://damienfremont.com/2016/05/09/how-to-cucumber-test-report-plugin-2-with-maven-and-java/最后一个黄瓜报告)。
但是我无法使用 gradle 来实现它......有人可以帮助我吗?
这是我的gradle build...我知道它一定是假的...
plugins {
id 'java'
id "com.github.spacialcircumstances.gradle-cucumber-reporting" version "0.1.2"
}
group 'Guru99 Bank'
version '1.0-SNAPSHOT'
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
testCompile 'io.cucumber:cucumber-java:2.4.0'
testCompile 'io.cucumber:cucumber-junit:2.4.0'
compileOnly group: 'info.cukes', name: 'gherkin', version: '2.12.2'
implementation group: 'org.seleniumhq.selenium', name: 'selenium-java', version: '3.5.3'
testCompile group: 'net.sourceforge.cobertura', name: 'cobertura', version: '2.1.1'
compile group: 'io.cucumber', name: 'cucumber-html', version: '0.2.7'
compileOnly group: 'io.cucumber', name: 'cucumber-jvm-deps', version: '1.0.6'
compile group: 'net.masterthought', name: 'cucumber-reporting', version: '4.3.0'
testCompile group: 'org.hamcrest', name: 'hamcrest-core', version: '1.3'
}
configurations {
cucumberRuntime {
extendsFrom testRuntime
}
}
task cucumber() {
dependsOn assemble, compileTestJava
doLast {
javaexec {
main = "cucumber.api.cli.Main"
classpath = configurations.cucumberRuntime +
sourceSets.main.output + sourceSets.test.output
args = ['--plugin', 'pretty', '--glue', 'gradle.cucumber',
'src/test/resources/']
}
}
cucumberReports {
outputDir = file('path/for/generated/html')
buildId = '0'
reports = files('out/cucumber-report.json', 'out/test/cucumber-
json.json')
}
}
解决方案
在你的 Build.gradle 中试试这个 -
task cucumber(type: JavaExec) {
dependsOn assemble, compileTestJava
systemProperty('envcu', System.properties['envcu'] ?: 'dev')
main = "io.cucumber.core.cli.Main"
classpath = configurations.cucumberRuntime + sourceSets.main.output + sourceSets.test.output
args = ['--plugin', 'pretty','--plugin','html:CucumberReports','--plugin', 'json:CucumberReports/report.json','--glue', 'CucumberTest', 'src/test/resources']
}
cucumberReports {
outputDir = file('CucumberReports')
buildId = '0'
reports = files('CucumberReports/report.json')
}
推荐阅读
- firefox - Rust 不接受来自本地消息传递的标准输入的输入 - firefox
- javascript - 如何在 Duktape 中实现非阻塞事件循环?
- laravel - Laravel 根据时间戳更新数据库字段
- c - 矩阵乘法不适用于 C 中大于外部的内部维度
- android - 如何增加 FD_SETSIZE 或限制 Android Emulator 引发的描述符数量
- node.js - Docker Nodejs - 将应用程序文件夹映射到主机文件夹 - 应用程序无法启动,找不到模块
- c# - 在 C# 中计算下一个可接受的通知时间
- reactjs - 前一个函数完成后调用一个函数reactjs
- python - 我可以在不使用try语句的情况下捕获python中的异常信息吗?
- coding-style - 我的解决方案有什么问题?帮我改进它或任何其他解决方案?