Как получить имя сценария в cucumber java?
Я хотел бы получить имя сценария, чтобы иметь значимые журналы и генерировать пользовательский отчет во время выполнения в java. Класс сценария имеет только методы getStatus() и getSourceTagNames (). Я не нахожу способа узнать название сценария.
может кто-нибудь помочь мне решить эту проблему ?
2 ответов
кроме того, getStatus()
и getSourceTagNames()
, есть другой метод,getName()
это возвращает описание сценария.
Например, для сценария следующим образом:
Scenario: verify number of topics shown in the UI
scenario.getName()
возвращает "verify number of topics shown in the UI"
Я инициализирую сценарий в @Before следующим образом:
@Before
public void before(Scenario scenario) {
this.scenario = scenario;
}
надеюсь, что это помогает.
String scenarioName = scenario.getName();
String[] arrayScenarioName = scenarioName.split("--");
String scenarioName1 = arrayScenarioName[0];
String scenarioName2 = arrayScenarioName[1];
System.out.println("Scenario Name 1 for this test is -> " + scenarioName1);
System.out.println("Scenario Name 2 for this test is -> " + scenarioName2);
String scenarioId = scenario.getId();
//Takes the Scenario ID and removes the ; and splits it into 2 strings
String scenarioId4 = scenarioId;
String[] parts = scenarioId4.split(";");
String part1 = parts[0];
String part2 = parts[1];
String part11 = part1.replace('-', ' ');
String part22 = part2.replace('-', ' ');
System.out.println("Scenario ID for this test is -> part11 " + part11);
System.out.println("Scenario ID for this test is -> part22 " + part22);
после того, как у вас есть @Before настроить их попробуйте это, чтобы получить функцию огурца и элементы сценария.