无法将黄瓜项目作为java应用程序运行

时间:2017-06-08 04:47:44

标签: java eclipse maven selenium cucumber

我在Eclipse IDE和Maven Build中创建了一个Cucumber项目,我将其作为.jar文件导出。所以我已经声明了main方法,并且我使用cucumber.api.cli.Main调用了要素文件。

我的main方法如下所示:

public class NewMain {
    public static void main(String[] args) throws Throwable {
        // TODO Auto-generated method stub
        System.out.println("Before caling PhantomJS");

        File f = new File("C:\\Test\\text.txt");
        if (f.exists())

            f.delete();
        f.createNewFile();

        Main.main(new String[] { "-g", "com.cucumber.testcases",
                "src/test/java/com/cucumber/Features/PolicyFeatures.feature" });

        System.out.println("after caling PhantomJS");
    }

}
  • 项目结构:

我通过选择所有项目依赖项并提取.jar文件来创建.jar文件,我将获取所有jar文件,如下所示:

现在,在运行.jar文件时,它会输入main方法,因为我可以创建文件,但不会运行功能文件。

请告诉我需要做哪些更改。

1 个答案:

答案 0 :(得分:0)

将您的要素文件放在与跑步者类相同的包或子包中。将步骤放在相同的包结构中。这将允许您简化配置:

Main.main(new String[] { "-g", "com.cucumber.testcases",
                "src/test/java/com/cucumber/Features/PolicyFeatures.feature" });

您可以完全删除它。

我将使用的更好的方法是从一个工作示例开始,并将其转换为您想要的。这里有一个工作示例:https://github.com/cucumber/cucumber-java-skeleton

从一个小而实用的例子开始,通常可以轻松地使复杂的示例工作。这是从Gall's law

开始的