如何使用DriverFactory类或runner文件获取在Java中运行的当前功能文件名,用于旧版本的依赖项和Java 8?我尝试使用功能场景,但它不适合我。有没有什么方法可以在运行时动态地获取功能文件的当前名称或标签?
mm9b1k5b1#
要在Cucumber-Java测试中获取当前正在执行的功能文件的名称,一种常见的方法是使用Before钩子,并从提供给钩子方法的Scenario对象中提取详细信息。下面的示例演示了如何获取功能文件名和标签:
Before
Scenario
import cucumber.api.Scenario; import cucumber.api.java.Before; public class Hooks { @Before public void beforeScenario(Scenario scenario) { String featureName = "Feature "; String rawFeatureName = scenario.getId().split(";")[0].replace("-"," "); featureName = featureName + rawFeatureName.substring(0, 1).toUpperCase() + rawFeatureName.substring(1); // print the feature name System.out.println("Feature Name: " + featureName); // print scenario's tags for (String tag : scenario.getSourceTagNames()) { System.out.println("Tag: " + tag); } } }
几个注意事项:
1条答案
按热度按时间mm9b1k5b1#
要在Cucumber-Java测试中获取当前正在执行的功能文件的名称,一种常见的方法是使用
Before
钩子,并从提供给钩子方法的Scenario
对象中提取详细信息。下面的示例演示了如何获取功能文件名和标签:
几个注意事项: