Реализация миграции с JUnit 4 на JUnit 5 может выполняться шаг за шагом, и в течение некоторого времени вы можете работать с гибридным подходом для зрелых проектов. В статье будут сравниваться необходимые зависимости JUnit 4 и JUnit 5. Затем он сравнит эквивалентные аннотации JUnit 4 и JUnit 5.

1. Шаги между JUnit 4 и JUnit 5

JUnit 5 — это новая парадигма, представляющая новую архитектуру. Он также представляет новые пакеты, аннотации, методы и классы. Некоторые функции JUnit 5 аналогичны функциям JUnit 4; другие являются новыми, обеспечивая новые возможности. Модель программирования и расширения JUnit Jupiter изначально не поддерживает функции JUnit 4, такие как правила и средства выполнения. Нам не нужно обновлять все существующие тесты, тестовые расширения и настраиваемую тестовую инфраструктуру для переноса проектов на JUnit Jupiter — по крайней мере, не мгновенно.

JUnit предоставляет путь миграции с помощью механизма тестирования JUnit Vintage; В таблице 1 приведены наиболее важные шаги. Это дает возможность выполнять тесты на основе старых версий JUnit, используя инфраструктуру платформы JUnit. Все классы и аннотации, специфичные для JUnit Jupiter, находятся в новом базовом пакете org.junit.jupiter. Все классы и аннотации, характерные для JUnit 4, находятся в старом базовом пакете org.junit. Таким образом, наличие JUnit 4 и JUnit 5 Jupiter в пути к классам не приводит к конфликту. Следовательно, наши проекты могут хранить ранее реализованные тесты JUnit 4 вместе с тестами JUnit Jupiter. JUnit 5 и JUnit 4 могут сосуществовать до тех пор, пока мы не завершим нашу миграцию, когда бы это ни было, и эту миграцию можно планировать и выполнять медленно в зависимости от приоритета задач и проблем на различных этапах.

Перед разработкой и запуском тестов JUnit

  • JUnit 4 требует Java 5 или более позднюю версию.
  • JUnit 5 требует Java 8 или более позднюю версию.

Следовательно, переход с JUnit 4 на JUnit 5 может потребовать обновления версии Java, используемой в проекте.

Заинтересованы в JUnit? Посетите наши тренинги.

Каталин Тудоуз
Эксперт по Java и веб-технологиям

Первоначально опубликовано на https://www.luxoft-training.com.