我的功能文件位于src / test / resources中,testrunner类位于src / test / java中,默认设置为cucumber-jvm。
我想将这个项目打包在一个jar文件中,这样当我执行jar时,我的测试应该运行。
我该怎么做?
答案 0 :(得分:3)
经过大量的修修补补后,我想我可能有一个解决方案。
你会有两个文件(对不起,如果我的行话有点不对,我也是新手) 步骤定义文件和测试运行器文件。确保在Test Runner文件中有一个主方法
public static void main(String[] args) throws Exception {
JUnitCore.main(
"PackageName.Filename");
}
所以最终看起来像这样:
public class TestRunner {
public static void main(String[] args) throws Exception {
JUnitCore.main(
"cucumberTest.TestRunner");
}
}
将其作为Java应用程序运行。
完成后,您现在可以单击它并将其导出为Runnable Jar文件。在选择Runnable Jar File选项后的Launch configuration中,如果尚未选择TestRunner,请从下拉列表中选择,然后选择相应的Library处理。 (我选择Extract required libraries来生成JAR)和一个合适的文件目标。
然后点击完成。
在我的Test Runner java文件中,我还添加了这个:
@CucumberOptions(
features = "Feature"
,glue={"stepDefinition"}
,plugin={"pretty",
"json:C:/EclipseWorkspace/ProjectName/cucumber.json",
"junit:C:/EclipseWorkspace/ProjectName/cucumber.xml"}
)
这会将测试转储到两个可用的文件JSON和XML中,您可以在其中查看测试的详细信息。
我希望这会有所帮助。