2015-10-30 170 views
1

我正在將一個cucumber-java與現有的gradle java項目集成在一起,該項目專注於測試自動化。此項目中沒有生產代碼,因此整個項目沒什麼意義。從Gradle運行單個黃瓜-jvm .feature文件

我想要做的是創建gradle任務或帶有-D屬性的單個gradle任務,該屬性指定一個運行cucumber-jvm的黃瓜.feature文件。我見過的所有例子都展示瞭如何讓cucumber-jvm作爲構建過程的一部分來運行。相反,我想定義一個task testCucumber(type: Test)來運行一個.feature文件。我會如何去做這件事?

回答

0

我可以通過在gradle中使用javaexec任務來獲得此功能。

javaexec { 
     main = "cucumber.api.cli.Main" 
     classpath = configurations.cucumberRuntime + sourceSets.main.output + sourceSets.test.output 
     args = ['--plugin', 'junit:target/cucumber-junit-report.xml', '--plugin', 'pretty', '--glue', 'StepDefinitions', 'src/test/Features/FeatureFilename.feature'] 
    } 

這是假定所有的步驟定義都在名爲「StepDefinitions」的包內定義。