Запуск тестового файла огурца из кнопки приложения
Я настроил тестовый файл в src/main/java с моими аннотациями огурца, содержащими класс A, а также тестовый файл, расширяющий класс A в src/test/java со следующей аннотацией для класса B:
@ContextConfiguration(locations = {"classpath:META-INF/application-config.xml", "classpath:META-INF/overrule.xml" })
Это работает нормально, когда я делаю чистую установку maven. Однако я хотел бы добиться того, чтобы можно было запустить файл функций через настройку огурца класса A и посмотреть его вывод. До сих пор мне удалось найти метод, который позволил бы мне запустить тест на огурец, но я не могу понять, какими должны быть его аргументы. Может ли кто-нибудь предоставить мне пример того, как реализовать функцию cucumber.api.cli.Main.run()?
@Override
public void buttonClick(final ClickEvent event) {
try {
final String[] arguments = {"foo", "bar" };
cucumber.api.cli.Main.run(arguments, ClassLoader.getSystemClassLoader());
} catch (final Throwable e) {
e.printStackTrace();
}
}
1 ответ
Я бы вызвал версию командной строки, используя cucumber.api.cli.Main.main(args);
где args
массив строк с установленными параметрами Я бы не использовал команду run, на которую вы ссылаетесь.
В документации описаны все доступные варианты.
Другим источником может быть начальный проект, предоставленный командой Cucumber: https://github.com/cucumber/cucumber-java-skeleton
Может быть особенно интересно заглянуть в скрипт сборки Ant https://github.com/cucumber/cucumber-java-skeleton/blob/master/build.xml чтобы увидеть, какие аргументы они предоставляют Cucumber.