Cucumber框架和TestNG集成需要哪些重要的依赖关系?

时间:2018-12-29 09:31:30

标签: maven cucumber testng cucumber-jvm cucumber-java

借助Eclipse IDE中的Maven项目,我创建了一个基本的Cucumber框架。

我正在尝试使用TestNG套件执行所有运行程序类。为此,我必须在pom.xml文件中添加Cucumber和TestNG集成所需的所有依赖项。

亚军类1

package tests.report.runners;
import cucumber.api.CucumberOptions;
@CucumberOptions(features = "src/test/resources/features",glue= {"tests"},tags= {"@Report"})
public class ReportRunner {

}

亚军类2

package tests.dashboard.runners;
import cucumber.api.CucumberOptions;
@CucumberOptions(features = "src/test/resources/features",glue= {"tests"},tags= {"@Report"})
public class DashboardRunner {

}

testng.xml

?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">

<suite name="First Suite" parallel="classes">
<test name="Chrome Test" parallel="classes">


<classes>
<class name ="tests.report.runners.ReportRunner"></class>
<class name ="tests.dashboard.runners.DashboardRunner"></class>

</classes> 


</test>
</suite> 

包装结构在这里:

framework

但是,我遇到此错误:

  

在类路径中找不到类:\ src \ test \ java \ tests \ report \ runners \ ReportRunner.java

我该如何调试呢?

2 个答案:

答案 0 :(得分:0)

我认为您没有在Runner类中扩展testNG类,这可能是我的原因,因为JVM不会知道它必须使用TestNG。

public class ReportRunner extends AbstractTestNGCucumberTests{

}

尝试对两个跑步者都使用上面的陈述,然后尝试。

答案 1 :(得分:0)

首先,您必须在启动器类中扩展此类AbstractTestNGCucumberTests。

如果在扩展上述类后仍无法运行测试,则可以创建一个高级文件夹并命名功能。单击项目添加新文件夹,然后将特征文件移动到该文件夹​​中。因此,您必须更改CucumberOptions的特征参数值。