我应该选择io.cucumber.junit.CucumberOptions与io.cucumber.testng.CucumberOptions与cucumber.api.CucumberOptions

时间:2019-09-13 13:35:13

标签: testng cucumber-junit

我是黄瓜新手。我正在尝试在Maven项目中使用testng运行黄瓜特征文件。为此,在我的pom.xml文件中,我具有  TestNG,黄瓜,junit,黄瓜junit,黄瓜java,硒java

我已经从CucumberOptions导入了io.cucumber.junit.CucumberOptions,当我使用属性格式时,eclipse抛出了错误的格式注释类型CucumberOptions的属性格式未定义  eclipse还给我提供了从3个不同的类中导入CucumberOptions的选项,即

io.cucumber.junit.CucumberOptions
io.cucumber.testng.CucumberOptions
cucumber.api.CucumberOptions

I have 2 questions.
  1. 这3个软件包似乎都不支持format属性, 如果我想低于o / p

    我应该怎么做
    format = {
    "pretty",
    "html:target/cucumber-reports/cucumber-pretty",
    "json:target/cucumber-reports/CucumberTestReport.json",
    "rerun:target/cucumber-reports/rerun.txt"
    } 
    
  2. 我完全不知道什么时候使用这些软件包中的每一个 场景。请帮助我。

尝试谷歌搜索信息,很少博客说过不推荐使用格式,现在我们需要使用漂亮的格式,同时很少有人说我们应该使用格式来生成不同格式的输出

package com.qa.testngcucumberrunner;
import io.cucumber.junit.CucumberOptions;
@CucumberOptions(
dryRun=false,
monochrome=true,
strict=true,
features={"./src/test/resources/com/qa/features"},
glue={"com.qa.stepdef"},
plugin={"json:target/cucumber- 
reports/CucumberTestReport.json"},
format = {
"pretty",
"html:target/cucumber-reports/cucumber-pretty",
"json:target/cucumber-reports/CucumberTestReport.json",
"rerun:target/cucumber-reports/rerun.txt"
} 
)
public class TestRunner {}

期望:     想知道我什么时候应该使用哪种进口     也想知道我应该怎么做才能得到html,json,return中的报告     按照TestRunner文件中的格式进行格式化

1 个答案:

答案 0 :(得分:1)

  

我是黄瓜的新手。

看看https://cucumber.io/docs/guides/10-minute-tutorial/

  

我正在尝试在Maven项目中使用testng运行黄瓜功能文件。为此,在我的pom.xml文件中,我具有TestNG,黄瓜,junit,黄瓜junit,黄瓜java,硒java

的依赖项。

每个依赖项都提供了一些功能。您只应为所需的位添加依赖项。例如,cucumber-java依赖性为您提供了@Given@When@Then批注。 cucumber-junitcucumber-testng模块分别与JUnit和TestNG集成。

您不太可能同时使用两者。因此,如果您正在使用TestNG进行测试,则应使用cucumber-testngcucumber-java并删除对cucumber-junit的依赖。相反,如果要使用JUnit进行测试,则应使用cucumber-junitcucumber-java并删除cucumber-testng

  

想知道我什么时候应该使用哪个导入

您的IDE应该告诉您cucumber.api.CucumberOptions已过时。因此,如果使用的是JUnit,则使用io.cucumber.junit.CucumberOptions,如果使用的是TestNG,则使用io.cucumber.testng.CucumberOptions

  

这3个软件包似乎都不支持格式属性

format属性已替换为plugin

现在,如果您使用的是JUnit或TestNG,我将无法解决,因此您必须选择: