在
@CucumberOptions
下,使用 tags 选项仅执行一组测试,例如:冒烟测试。我已经编写了如下标签代码:
@CucumberOptions(
tags = {"@SmokeTest"} // <<< Type mismatch: cannot convert from String[] to String
)
但是我收到类型不匹配错误。
要解决此问题,请勿对标签使用花括号。只需为标签编写代码,如下代码
@CucumberOptions(
tags = "@SmokeTest and @End2End"
)
删除大括号后,我没有收到任何错误。
解决方法如下 即用 () 替换覆盖 Runner 文件中标签的 {}
tags=(“@smoke 和 @function”)
片段
@RunWith(Cucumber.class)
@CucumberOptions(
features="src/test/resources/Feature",
glue={"StepDefination"},
tags=("@Functional or @Sanity"),
monochrome = true,
plugin= {"pretty", "junit:target/JUNITReports/report.xml",
"json:target/JSONResports/report.json",
"html:target/HTMLReports/report.html"},
dryRun=false
)
在以前的版本中,使用了大括号,但在新版本中,标签用作简单文本,不需要任何大括号。 使用小括号代替大括号即可。
我在下面尝试过,它对我有用。
对于“或”状态:
tags = ("@SmokeTest or @RegressionTest") //this will execute for all TC containing annotations
对于“和”状态:
tags = ("@SmokeTest and @RegressionTest") //this will execute where tc is annotated with both