我正在使用Junit运行运行程序文件,但我想使用TestNG运行功能文件和范围报告。 请帮助我找出带有黄瓜赛跑者课程的TestNG来运行该项目。
答案 0 :(得分:1)
@RunWith(ExtendedCucumber.class) -This is used for Junit
AbstractTestNGCucumberTests – is used for TestNG
用AbstractTestNGCucumberTests扩展Runner类并添加TestNG依赖项
答案 1 :(得分:0)
第1步-如果您使用的是Maven,则在pom.xml中添加此“ cucumber-testng”依赖项-我已使用4.8.0版本
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-testng</artifactId>
<version>4.8.0</version>
</dependency>
Step2-您需要创建一个Runner类,并将其扩展到AbstractTestNGCucumberTests,以便其外观如下-
public class <your runner class name here> extends AbstractTestNGCucumberTests
Step3-在您的跑步者课程中添加以下“ CucumberOptions”
@CucumberOptions
(
features = "<your feature file path>", //the path of the feature files
glue={"<your step definition file path>"}, //the path of the step definition files
plugin= {"pretty:target/cucumber-pretty.txt",
"html:target/cucumber-html-report",
"json:target/cucumber.json",
"rerun:target/rerun.txt"
}, //to generate different types of reporting
monochrome = true, //display the console output in a proper readable format
strict = true, //it will check if any step is not defined in step definition file
dryRun = false //to check the mapping is proper between feature file and step definition file
)
现在,您可以从testng.xml文件运行执行。 确保在您的testng.xml文件中添加“ Runner类”。
<class name="runner class path here" />
答案 2 :(得分:0)
要用 TestNG 替换 Junit,可以使用以下方法:
一个。在 TestNG xml 中,在 class 标签中添加 TestRunner 文件的路径和名称。帮助TestNG定位cucumber的TestRunner文件
B.在 TestRunner 文件中,确保您的类扩展了 AbstractTestNGCucumberTests
c.在Maven中添加cucumber-testNG依赖来加载需要的jars。
那么你就可以开始了,除了我们已经拥有的控件(来自 TestRunner)之外,它还将有助于你从 testNG 控制测试执行。此外,现在可以使用黄瓜报告,这似乎是最好的报告工具,尤其是对于测试自动化工程师。 (但我认为开发人员也可以在单元测试中使用它)