2

我面临一个问题,我需要运行具有三个功能的脚本。假设我们有 3 个标签名称为@smoke1,@smoke2@smoke3. 我希望这些按顺序执行。

问题是smoke3首先执行,然后其余的执行。

这是我的脚本:

@Cucumber.Options(
    glue = { "com.abc", "cucumber.runtime.java.spring.hooks" },
    features = "classpath:",
    format = { "json", "json:target/cucumber.json" },
    tags = "@smoke1, @smoke2, @smoke3"
)
public class ex_Test extends AbstractTest { }
4

4 回答 4

2

警告:这只适用于旧版本的 Cucumber。

Cucumber 特征文件按路径和文件名的字母顺序执行。执行顺序不基于标签。

但是,如果您特别指定功能,它们应该按照声明的顺序运行。

例如:

@Cucumber.Options(features={"first_smoke.feature", "another_smoke.feature"})

应该运行first_smoke然后another_smoke(与默认以其他顺序运行相比。

于 2013-08-22T16:21:02.260 回答
0

好的,我们知道了,我们可以为单个场景设置多个标签,例如 @tag1 @tag2 @tag3。

于 2013-08-23T06:33:29.270 回答
0

您不能按以下方式定义顺序。

@Cucumber.Options(features={"first_smoke.feature", "another_smoke.feature"})

Cucumber 决定了唯一的字母顺序,甚至只有单词的第一个字母。

于 2017-10-18T07:57:43.637 回答
0

您可以在功能文件中拥有多少个标签,如果您想多次触发功能文件,它不起作用,就像您将添加标签更多时间或从功能中添加更多标签一样:

标签 = {"@Reports,@Reports"}

并且测试按字母顺序触发,它检查标签而不是特征文件名。

于 2020-02-28T07:42:31.703 回答