Перейти к основному содержимому

· 5 мин. чтения

1. Обзор

При тестировании нам часто требуется доступ к временному файлу. Однако самостоятельно управлять созданием и удалением этих файлов может быть обременительно.

В этом кратком руководстве мы рассмотрим, как JUnit 5 облегчает это, предоставляя расширение TempDirectory .

Чтобы получить подробное руководство по тестированию с помощью JUnit, ознакомьтесь с нашим превосходным руководством по JUnit 5 .

2. Расширение TempDirectory

· 3 мин. чтения

1. Обзор

В этой статье мы кратко рассмотрим аннотацию JUnit @Test . Эта аннотация предоставляет мощный инструмент для выполнения модульного и регрессионного тестирования.

2. Конфигурация Maven

Чтобы использовать последнюю версию JUnit 5 , нам нужно добавить следующую зависимость Maven:

<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>5.8.1</version>
<scope>test</scope>
</dependency>

· 4 мин. чтения

1. Обзор

В этой статье мы поймем, почему в JUnit возникает ошибка java.lang.NoClassDefFoundError и как ее исправить. Эта проблема в основном связана с конфигурациями IDE. Поэтому мы сосредоточимся на самых популярных IDE: Visual Studio Code, Eclipse и IntelliJ, чтобы воспроизвести и устранить эту ошибку.

2. Что такое java.lang.NoClassDefFoundError ?

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

Есть несколько причин, по которым Java не может найти определение класса:

· 5 мин. чтения

1. Обзор

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

Обратите внимание, что тестирование абстрактных классов почти всегда должно проходить через общедоступный API конкретных реализаций , поэтому не применяйте описанные ниже методы, если вы не уверены в том, что делаете.

2. Зависимости Maven

Начнем с зависимостей Maven:

· 2 мин. чтения

1. Обзор

Иногда во время модульного тестирования нам может потребоваться прочитать какой-либо файл из пути к классам или передать файл тестируемому объекту. Или у нас может быть файл в src/test/resources с данными для заглушек, которые могут использоваться такими библиотеками, как WireMock .

В этом руководстве мы покажем, как прочитать путь к каталогу / src/test/resources .

2. Зависимости Maven

Во-первых, нам нужно добавить JUnit 5 к нашим зависимостям Maven:

· 5 мин. чтения

1. Обзор

При модульном тестировании мы можем периодически обрабатывать результаты выполнения наших тестовых методов. В этом кратком руководстве мы рассмотрим, как это можно сделать с помощью TestWatcher API, предоставляемого JUnit .

Чтобы получить подробное руководство по тестированию с помощью JUnit, ознакомьтесь с нашим превосходным руководством по JUnit 5 .

2. API TestWatcher

Короче говоря, интерфейс TestWatcher определяет API для расширений , которые хотят обрабатывать результаты тестов . Один из способов, которым мы можем думать об этом API, — это предоставление хуков для получения статуса отдельного тестового примера.

· 5 мин. чтения

1. Обзор

В этом руководстве мы покажем, как запускать тесты JUnit непосредственно из кода Java — есть сценарии, в которых эта опция пригодится.

Если вы новичок в JUnit или хотите перейти на JUnit 5, вы можете ознакомиться с некоторыми из многочисленных руководств по этой теме, которые у нас есть.

2. Зависимости Maven

Нам понадобится пара основных зависимостей для запуска тестов JUnit 4 и JUnit 5:

· 7 мин. чтения

1. Обзор

Библиотека JUnit 5 предлагает множество новых функций по сравнению с предыдущими версиями. Одной из таких функций являются тестовые шаблоны . Короче говоря, шаблоны тестов представляют собой мощное обобщение параметризованных и повторяющихся тестов JUnit 5.

В этом руководстве мы узнаем, как создать тестовый шаблон с помощью JUnit 5.

2. Зависимости Maven

Начнем с добавления зависимостей в наш pom.xml .

· 8 мин. чтения

1. Обзор

Maven — самый популярный инструмент сборки в среде Java, а интеграционное тестирование — неотъемлемая часть процесса разработки. Поэтому вполне естественно настроить и выполнить интеграционные тесты с помощью Maven.

В этом руководстве мы рассмотрим несколько различных способов использования Maven для интеграционного тестирования и отделения интеграционных тестов от модульных тестов.

2. Подготовка

Чтобы приблизить демонстрационный код к реальному проекту, мы настроим приложение JAX-RS. Это приложение развертывается на сервере перед выполнением интеграционных тестов, а затем демонтируется.

· 6 мин. чтения

1. Введение

Хотя последовательное выполнение тестов в большинстве случаев работает нормально, мы можем захотеть распараллелить их, чтобы ускорить процесс.

В этом руководстве мы расскажем, как распараллелить тесты с помощью JUnit и подключаемого модуля Maven Surefire. Сначала запустим все тесты в одном JVM-процессе, потом попробуем с многомодульным проектом.

2. Зависимости Maven

Начнем с импорта необходимых зависимостей. Нам нужно будет использовать JUnit 4.7 или новее вместе с Surefire 2.16 или новее: