Ссылаясь на книгу Джона Serenity BDD, может ли аннотация @Test охватить полный сценарий, как часть запуска SerenityRunner.class?

Я имею в виду книгу Джона о безмятежности Джона @ https://serenity-bdd.github.io/theserenitybook/latest/step-libraries.html. В самом начале Джон, похоже, заключает в себе набор определений шагов @given @when @then внутри метода, который аннотируется тегом @Test.

@Test
public void members_should_start_with_Bronze_status() {
        // GIVEN
        tracy.joins_the_frequent_flyer_program();
        // THEN
        tracy.should_have_a_status_of(Bronze);
    }

1. Как бы вы выбрали название метода? Из шага, описывающего сценарий: ключевое слово?

2. Возможно ли это сделать, только если вы используете аннотацию @RunWith(SerenityRunner.class) непосредственно перед объявлением класса StepDefinition?

3. Как насчет того, если вы использовали @RunWith(CucumberWithSerenity.class) вместо? Как лучше всего объявить эту аннотацию? В файле TestRunner.java или как вы показали в стороне файл класса stepdefinition?

4. Какова роль безмятежности. Свойства в корне проекта Vs. Файл TestRunner.java? Можем ли мы использовать только один вместо обоих?

Извините за эти многие вопросы. От имени разработчиков тестов JUnit-Cucumber-Serenity я говорю следующее: "Мы боремся, не имея окончательной документации".

Я знаю, что это в природе зверя. Поскольку Serenity можно использовать вместе со всеми вышеперечисленными технологиями, и один простой ответ будет затруднительным.

Кстати, я посмотрел на начальный проект Джона для проекта Serenity-junit-starter-master ( Serenity-junit-starter), который в большей степени иллюстрирует его книгу, я нигде не мог найти файл объектов. Соединение точек между файлом объекта и документом "Шаги" дало бы много понимания.

1 ответ

Решение

"// GIVEN" и т. Д. - просто комментарии; они не связаны с огурцом. Вы можете запустить Serenity с JUnit, Cucumber или JBehave, но большая часть книги (в настоящее время) посвящена чисто реализациям JUnit.

Другие вопросы по тегам