我通过功能文件或跑步者类运行我的测试。我无法创建一个Jar,因为我的项目中没有主方法。请告诉我如何使用此文件创建jar文件,或者如果我需要添加任何内容。
我想在服务器中执行功能方案,以实现我想要创建我当前项目的exe(Cucumber with selenium webdriver,Java使用eclipse IDE和Maven作为Build工具),但由于我没有我项目中的主要方法。请告诉我如何使用此文件创建jar文件,或者如果我需要添加任何其他插件以及如何在此处添加main方法。
This is my POM.xml from the project :
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.cucumber</groupId>
<artifactId>BasePolicy</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>BasePolicy</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>info.cukes</groupId>
<artifactId>cucumber-java</artifactId>
<version>1.2.5</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>info.cukes</groupId>
<artifactId>cucumber-picocontainer</artifactId>
<version>1.2.5</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>info.cukes</groupId>
<artifactId>cucumber-junit</artifactId>
<version>1.2.5</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>jdom</groupId>
<artifactId>jdom</artifactId>
<version>1.1</version>
</dependency>
</dependencies>
</project>
--------------------------------------------------------------------
and My java runner class :
package com.cucumber.testcases;
import java.io.File;
import java.util.concurrent.TimeUnit;
import org.junit.Before;
import org.junit.runner.RunWith;
import org.openqa.selenium.phantomjs.PhantomJSDriver;
import com.cucumber.Base.BaseDriver;
import cucumber.api.CucumberOptions;
import cucumber.api.junit.Cucumber;
@RunWith(Cucumber.class)
@CucumberOptions(
// format = {"pretty","html:target/html/" } ,
features = "src/test/java")
public class RunnerClass {
}
答案 0 :(得分:0)
您可以通过调用static main method of Main.class
(一个句子中有很多主电源)来创建一个运行黄瓜的主方法。
创建一个新类并向其添加以下main方法。
public static void main(String[] args) throws Throwable {
Main.main(new String[]{"-g", "classpath to step definition file", "Full path to feature file"});
// My stepdefinition is inside java package at cucumber.sample.test
// My feature file is inside src/test/resources/features/sample.feature
}
对于标签或插件等其他参数,请使用"-t","@Tags"
。 重要的是,要素文件路径必须是最后一个选项。
您可以进一步配置它,以便在运行它时将这些参数传递给此类,从而使其更加灵活。您需要在代码中使用args参数。