Короткий ответ Unit-тест проверяет отдельный компонент — один класс или метод — в изоляции от остальной системы: это «белый ящик», такие тесты быстрые и обычно пишутся самим разработчиком. Интеграционный тест проверяет взаимодействие модулей или слоёв приложения (сервиса с базой, контроллера с сервисом) и корректность работы с внешними зависимостями; он выполняется после unit-тестов и работает медленнее. Как это работает подробнее Коротко: unit-тест отвечает на вопрос «корректно ли работает этот класс сам по себе», а интеграционный — «корректно ли модули работают вместе». Тестирование нужно, чтобы находить дефекты на ранних стадиях (это дешевле исправления в проде), проверять соответствие требованиям, снижать риск отказов и повышать уверенность при изменении кода. JUnit — основной фреймворк unit-тестирования; в JUnit 5 используются @Test, @BeforeEach/@AfterEach, @BeforeAll/@AfterAll и классы-ассерты. Mockito — библиотека моков: when(...).thenReturn(...) задаёт ожидаемое поведение, verify(...) проверяет, что м
Загрузка…