我有如下所示的Cucumber Runner类,我需要通过gradle调用并运行此Runner类,以便像在普通黄瓜项目中一样,依次执行步骤定义/测试
import java.io.File;
import java.io.IOException;
import org.apache.commons.io.FileUtils;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeSuite;
import com.inspire.brands.helper.reporter.ReporterUtil;
import io.cucumber.testng.AbstractTestNGCucumberTests;
import io.cucumber.testng.CucumberOptions;
@CucumberOptions(features = { "classpath:featurefile" }, glue = { "classpath:com.inspire.brands.test.stepdefinition",
"classpath:com.inspire.brands.helper" }, plugin = { "pretty", "json:target/InspireBrands.json",
"com.aventstack.extentreports.cucumber.adapter.ExtentCucumberAdapter:" }, monochrome = true, tags = "@Api")
//tags = { "@Api","@UI8876"})
public class InspireBrandsTestRunner extends AbstractTestNGCucumberTests {
@AfterClass(alwaysRun = true)
public static void writeExtentReport() {
ReporterUtil.archiveReport();
}
/*
* @Override
*
* @DataProvider(parallel = true) public Object[][] scenarios() { return
* super.scenarios(); }
*/
}
但是我不想通过任务Cuumber来做到这一点,如下所示。
task cucumber() {
dependsOn assemble, testClasses
doLast {
javaexec {
main = "io.cucumber.core.cli.Main"
classpath = configurations.cucumberRuntime + sourceSets.main.output + sourceSets.test.output
args = ['--plugin', 'pretty',
'--plugin', 'json:target/InspireBrands.json',
'--plugin', 'com.aventstack.extentreports.cucumber.adapter.ExtentCucumberAdapter:Report',
'--glue','com.inspire.brands.test.stepdefinition',
'src/test/resources','src/main/java','src/main/java/com/inspire/brands/helper',
'--tags', '@Api'
]
}
}
}