Unit-тестирование (модульное тестирование) – уровень тестирования, на котором проверяются наименьшие единицы кода: функции, методы, классы. Тесты пишут разработчики, они выполняются быстро и автоматически при каждой сборке.
Принципы
- Изоляция: зависимости заменяются заглушками и моками.
- Быстрота и повторяемость.
- Один тест – одно поведение.
- Структура «подготовка – действие – проверка» (Arrange, Act, Assert).
Практики
- Разработка через тестирование (TDD): тест пишется до кода.
- Измерение покрытия кода тестами.
- Запуск в CI на каждый коммит.
Инструменты
Фреймворки для каждого языка: JUnit для Java, pytest для Python, Jest для JavaScript, NUnit и xUnit для .NET, встроенный пакет testing в Go.
Место в пирамиде тестирования
Модульных тестов больше всего, над ними – интеграционные, на вершине – сквозные (end-to-end) тесты.