В JUnit 5 есть новая аннотация: @Nested
.Какова цель JUnit 5 @Nested аннотация
Я понимаю, как это работает, я понимаю, почему мы используем вложенный класс, я просто не понимаю, почему мы должны иметь вложенный тест класса в нашем тесте.
В JUnit 5 есть новая аннотация: @Nested
.Какова цель JUnit 5 @Nested аннотация
Я понимаю, как это работает, я понимаю, почему мы используем вложенный класс, я просто не понимаю, почему мы должны иметь вложенный тест класса в нашем тесте.
Аннотации @Nested
позволяют вам иметь внутренний класс, который по существу является тестовым классом, позволяя группировать несколько тестовых классов под одним и тем же родителем (с той же инициализацией).
Все мои тесты нуждаются в сервере базы данных. Большинство моих тестов также нуждаются в таблице Users в базе данных, чтобы иметь возможность входа в систему. Кроме того, для некоторых тестов требуется таблица друзей, чтобы иметь возможность входить в систему и запрашивать друзей.
У каждого ресурса есть настройка и срыв. Я должен начинать и останавливать сервер, создавать и удалять таблицы.
С аннотацией @Nested я могу сгруппировать свои тесты в иерархию вложенных классов, чтобы каждый тест получил настройку и отключение всех тестов по иерархии.
Эта идея исследований гнездования была популяризирована в Ruby. В Java реализовано для Junit 4 с помощью hirarchicalcontextrunner. См. Обоснование на своей странице https://github.com/bechte/junit-hierarchicalcontextrunner/wiki.
Для формирования логических группировок тестовых примеров. –
Чтобы добавить к этому ... Маленький пример: EatsTest, BehaviourTest можно вложить в DogTest и т. Д. См. Http://junit.org/junit5/#nested-tests –
Эта ссылка должна быть: http://junit.org/junit5/docs/current/user-guide/# nested-tests –