Внедрение зависимостей и тестирование в JUnit 5. Часть 2

28.07.2020 126
Первая статья из серии по ссылке.

Предлагаем вашему вниманию вторую статью из нашей серии статей о внедрение зависимостей и тестировании в JUnit 5. В ней мы поговорим о повторяющихся тестах.

2. Повторяющиеся тесты.

JUnit 5 дает возможность повторять тест указанное число раз посредством аннотирования метода с помощью @RepeatedTest и указания общего числа необходимых повторов. Это может быть особенно полезно, когда при повторном выполнении теста какие-то условия могут изменяться. Каждый вызов повторного теста влечет за собой выполнение стандартного метода @Test с полной поддержкой обратных вызовов и расширений жизненного цикла.

Помимо указания числа повторов, можно настроить соответствующее имя отображения для каждого повтора с помощью атрибута аннотации @RepeatedTest. В настоящее время поддерживаются следующие заполнители:

  • – {displayName}: отображаемое имя метода @RepeatedTest

  • – {currentRepetition}: номер текущего повтора

  • – {totalRepetitions}: общее число повторов

В Примере 3 (Listing 3) показано использование повторяющихся тестов, заполнителей отображаемого имени и параметров RepetitionInfo. Сценарий первого повторного теста подтверждает, что выполнение метода add из класса Calculator class является стабильным и всегда дает одинаковый результат. Сценарий второго повторного теста подтверждает, что коллекции соответствуют правильной модели поведения: список получает новый элемент при каждой итерации, но набор не будет получать дублирующие элементы, даже если попытаться их вставить несколько раз.

listing 3
В приведенном выше примере мы видим следующее:

  1. Первый тест повторяется пять раз, и при каждом повторе он показывает отображаемое имя, номер текущего повтора и общее число повторов (1).

  2. Второй тест повторяется пять раз, и при каждом повторе он показывает число элементов в списке (это номер текущего повтора) и подтверждает тот факт, что в наборе всегда есть только один элемент (2).

  3. При выполнении каждого повторного второго теста, отображается номер повтора, который внедрен в параметр RepetitionInfo (3).

Результаты выполнения предыдущих тестов показаны на рисунках 2 и 3.

Рисунок_2
Рисунок 2. Имена повторяющихся тестов во время выполнения.

Рисунок_3
Рисунок 3. Сообщения, отображаемые на консоли вторым повторным тестом.

Автор Catalin Tudose, Java and Web Technologies Expert

Продолжение статьи по ссылке

Расскажи друзьям:

 
Оценка и обучение ИТ-специалистов по ключевым направлениям разработки программного обеспечения. Курсы от экспертов-практиков по языкам программирования, системному и бизнес-анализу, управлению проектами, тестированию ПО, архитектуре ПО. Luxoft Training – единственный учебный центр в России, авторизованный IIBA. Действует скидка 10% на обучение физических лиц.
   Подпишись на ежемесячный DigestLT
Успешная форма подписки.
Пользователь только что записался на курс ""
Спасибо!
Форма отправлена успешно.