黄瓜有序标记钩

时间:2018-01-03 18:23:13

标签: cucumber-jvm cucumber-java

我正在尝试使用Java黄瓜的有序标记钩子。例如:

@Before(" @ quicklink",order = 20)

编译器似乎并不喜欢它。是否有可能有一个有序的,标记的钩子?似乎是功能的合理组合。如果是这样,语法是什么?

日Thnx

3 个答案:

答案 0 :(得分:3)

我尝试了同样但以不同的方式

@Before(value =" @ quicklink",order = 20)

但是,如果你有另一个具有相同订单号的钩子方法用于其他测试,这可能会产生奇怪的问题。这两种方法都适用于这种情况。

所以如果您使用相同的顺序,我建议使用标记的表达式,如下所示:

对于其他方法,请使用
@Before(value ="〜@ quicklink",order = 20) 这将确保此方案永远不会在其他方法上运行

仅针对此方案,

@Before(value =" @ quicklink",order = 20)

这将确保上述方法永远不会为那些方法运行。

如果您在项目中使用2x版本的标记表达式,则可以替换'〜'用' not'

如果你想在特定场景中替换hooks类中的方法,这可能会派上用场。

答案 1 :(得分:1)

@Before(value = "@quicklink", order = 20)

答案 2 :(得分:0)

你应该可以像这样指定钩子的顺序:

带注释的方法样式(如果使用的是cucumber-java):

@Before(order = 10)
public void doSomething(){
    // Do something before each scenario
}

Lambda样式(如果你使用的是cucumber-java8):

Before(10, () -> {
    // Do something before each scenario
});