Как в Cucumber выполнять сценарий из шага другого сценария?
Т.е. хочется иметь такое:
Сценарий: Создал заказ
Допустим пользователь зашёл в приложение
Если нажал 1,2,3
То ...
Сценарий: Создал жалобу
Допустим пользователь зашёл в приложение
Если нажал 4,5,6
То ...
Сценарий: Создал жалобу используя данные заказа
Допустим пользователь зашёл в приложение
Если выполнил сценарий "Создал заказ"
и выполнил сценарий "Создал жалобу"
и сделал ещё какое нибудь действие
то ...
Просто у меня получается очень много сценариев (причём в разных feature файлах), в которых надо создавать одинаковые сущности, и копировать код не хочется, его же потом ещё и поддерживать придется.
Про background знаю, но как использовать его здесь не придумал. Хотелось бы чтобы можно было вызывать сценарий, вне зависимости от его расположения в файлах.
До чего дошёл, но не заработало, почему то не находятся вообще никакие сценарии (features всегда пустой):
@Then("^выполнить сценарий$")
public void runScenario() throws Throwable {
List<CucumberFeature> features = CucumberFeature.load(
new ClasspathResourceLoader(this.getClass().getClassLoader()),
asList("feature"),
Collections.emptyList(),
System.out
);
ExecutionUnitRunner runner = new ExecutionUnitRunner(
null,
(CucumberScenario) features.get(0).getFeatureElements().get(0),
new JUnitReporter(null, null, false)
);
runner.getRunnerSteps();
}
Как решали Вы данную проблему? Или может посоветуете что-нибудь...