Что такое Автоматизация тестирования
Автоматическое выполнение тестов ПО
Автоматизация тестирования
Автоматизация тестирования — использование специального ПО для выполнения тестов, сравнения результатов и генерации отчётов без участия человека.
Уровни тестирования
| Уровень | Описание | Инструменты | |---------|----------|-------------| | Unit-тесты | Тестирование отдельных функций | Jest, JUnit, pytest | | Интеграционные | Взаимодействие компонентов | TestContainers, Postman | | E2E тесты | Полные пользовательские сценарии | Cypress, Playwright, Selenium | | Нагрузочные | Производительность под нагрузкой | k6, JMeter, Gatling |
Пирамида тестирования
- Много unit-тестов — быстрые, дешёвые
- Средне интеграционных — проверяют связи
- Мало E2E — медленные, но покрывают реальные сценарии
Лучшие практики
- Запускать тесты в CI/CD на каждый коммит
- Изолировать тесты друг от друга
- Использовать моки для внешних зависимостей
- Поддерживать тесты актуальными
- Стремиться к покрытию 80%+
Метрики качества
- Coverage — процент покрытия кода
- Flakiness — нестабильные тесты
- Execution time — время выполнения
- Pass rate — процент успешных запусков