Внедрение зависимостей и тестирование в JUnit 5. Часть 2
Предлагаем вашему вниманию вторую статью из нашей серии статей о внедрение зависимостей и тестировании в JUnit 5. В ней мы поговорим о повторяющихся тестах.
2. Повторяющиеся тесты.
JUnit 5 дает возможность повторять тест указанное число раз посредством аннотирования метода с помощью @RepeatedTest и указания общего числа необходимых повторов. Это может быть особенно полезно, когда при повторном выполнении теста какие-то условия могут изменяться. Каждый вызов повторного теста влечет за собой выполнение стандартного метода @Test с полной поддержкой обратных вызовов и расширений жизненного цикла.Помимо указания числа повторов, можно настроить соответствующее имя отображения для каждого повтора с помощью атрибута аннотации @RepeatedTest. В настоящее время поддерживаются следующие заполнители:
-
– {displayName}: отображаемое имя метода @RepeatedTest
-
– {currentRepetition}: номер текущего повтора
-
– {totalRepetitions}: общее число повторов
В Примере 3 (Listing 3) показано использование повторяющихся тестов, заполнителей отображаемого имени и параметров RepetitionInfo. Сценарий первого повторного теста подтверждает, что выполнение метода add из класса Calculator class является стабильным и всегда дает одинаковый результат. Сценарий второго повторного теста подтверждает, что коллекции соответствуют правильной модели поведения: список получает новый элемент при каждой итерации, но набор не будет получать дублирующие элементы, даже если попытаться их вставить несколько раз.
![listing 3 listing 3](/upload/medialibrary/81d/listing 3.jpg)
В приведенном выше примере мы видим следующее:
-
Первый тест повторяется пять раз, и при каждом повторе он показывает отображаемое имя, номер текущего повтора и общее число повторов (1).
-
Второй тест повторяется пять раз, и при каждом повторе он показывает число элементов в списке (это номер текущего повтора) и подтверждает тот факт, что в наборе всегда есть только один элемент (2).
-
При выполнении каждого повторного второго теста, отображается номер повтора, который внедрен в параметр RepetitionInfo (3).
![Рисунок_2 Рисунок_2](/upload/medialibrary/466/Рисунок_2.jpg)
Рисунок 2. Имена повторяющихся тестов во время выполнения.
![Рисунок_3 Рисунок_3](/upload/medialibrary/e73/Рисунок_3.jpg)
Рисунок 3. Сообщения, отображаемые на консоли вторым повторным тестом.
Автор Catalin Tudose, Java and Web Technologies Expert
Продолжение статьи по ссылке
Расскажи друзьям: