在运行时提取黄瓜步骤名称

use*_*021 5 cucumber cucumber-jvm cucumber-java

我试图找出是否有一个选项可以找出当前正在执行的黄瓜步骤,我试图根据步骤名称执行某些操作。

我可以看到StepDefinitionMatch类可以获取这些步骤,但是我不确定如何在运行时访问这些步骤。有什么帮助吗?如果有帮助,可以添加调用堆栈的快照。

public StepDefinitionMatch(List<Argument> arguments, StepDefinition stepDefinition, String featurePath, Step step, LocalizedXStreams localizedXStreams) {
    super(arguments, stepDefinition.getLocation(false));
    this.stepDefinition = stepDefinition;
    this.featurePath = featurePath;
    this.step = step;
    this.localizedXStreams = localizedXStreams;
}
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

Bhu*_*ani -1

只需等待 Cucumber 3.0.0 发布,您就可以使用 @AfterStep 和 @BeforeStep 注解访问步骤名称。

https://github.com/cucumber/cucumber-jvm/blob/master/CHANGELOG.md https://github.com/cucumber/cucumber-jvm/pull/1323

感谢 Aniket (Coding-Yogi) https://github.com/coding-yogi

  • 如何使用`@BeforeStep`? (3认同)