Unit testing
Unit testing — модульное тестирование
Суть в одном предложении
Unit testing — тестирование отдельных единиц кода (функций, методов, классов) в изоляции, обычно с подменой зависимостей (mocks, stubs).
Краткое определение
Unit testing (модульное тестирование) — уровень тестирования, на котором проверяют небольшие изолированные части приложения — функции, методы, классы. Зависимости подменяют заглушками (mock, stub), чтобы результат зависел только от тестируемого кода. Выполняются быстро, часто входят в CI.
Оригинал и перевод
- Язык: английский
- Оригинал: Unit testing
- Буквальный перевод: модульное тестирование
Синонимы и варианты написания
- Юнит-тесты, unit-тесты
- Модульное тестирование
Где используется
- Любой язык и фреймворк (PHPUnit, Jest, pytest, JUnit и др.)
- CI/CD пайплайны (запуск тестов на каждый коммит)
- TDD (Test-Driven Development)
Когда это важно
Unit-тесты помогают ловить регрессии при рефакторинге и дают быструю обратную связь. Не заменяют интеграционные и E2E-тесты.
Подробное объяснение
Хороший unit-тест изолирован (не тянет БД, сеть, файлы без подмены), детерминирован и быстр. Обычно один тест проверяет один сценарий (one assertion per test — не догма, но упрощает понимание падения). Моки позволяют эмулировать внешние сервисы и граничные случаи.
Аналоги и связанные термины
- Integration testing, E2E testing
- Mocking, test coverage
- TDD, CI/CD
Пример использования
«Перед рефакторингом калькулятора скидок запустили unit-тесты; после изменений все 12 тестов зелёные.»