Функциональные виды:
- Модульное (Unit Testing): Проверка отдельных компонентов/модулей приложения в изоляции.
- Интеграционное (Integration Testing): Проверка взаимодействия между модулями или компонентами.
- Системное (System Testing): Проверка приложения в целом в интегрированной среде.
- Приемочное (Acceptance Testing): Проверка соответствия системы требованиям заказчика или конечного пользователя. Включает Альфа- и Бета-тестирование.
- Регрессионное (Regression Testing): Проверка того, что изменения не внесли новых дефектов в существующую функциональность.
Нефункциональные виды:
- Производительность (Performance Testing):
- Нагрузочное (Load Testing): Проверка поведения системы под ожидаемой нагрузкой.
- Стрессовое (Stress Testing): Проверка поведения системы под экстремальной нагрузкой (за пределами ожидаемой).
- Тестирование стабильности/выносливости (Endurance/Soak Testing): Проверка работы системы в течение длительного времени под определенной нагрузкой.
- Тестирование масштабируемости (Scalability Testing): Проверка способности системы обрабатывать увеличенное количество пользователей или данных.
- Юзабилити (Usability Testing): Оценка удобства использования приложения пользователями.
- Тестирование безопасности (Security Testing):
- Тестирование на проникновение (Penetration Testing): Поиск уязвимостей и попытки их эксплуатации.
- Тестирование на наличие уязвимостей (Vulnerability Scan): Автоматизированный поиск известных уязвимостей.
- Совместимость (Compatibility Testing): Проверка работы приложения в различных средах (ОС, браузеры, устройства, базы данных и т.д.).
- Доступность (Accessibility Testing): Проверка удобства использования приложения для людей с ограниченными возможностями.
- Локализация и Интернационализация (Localization and Internationalization Testing): Проверка соответствия приложения региональным стандартам и возможностям адаптации.
Виды тестирования, связанные с изменениями:
- Ретестинг (Retesting): Повторная проверка исправленного дефекта.
- Регрессионное (Regression Testing): Упомянуто выше, но важно выделить его в контексте изменений.
Тестирование на основе методики:
- Дымовое (Smoke Testing): Быстрая проверка основных функций, чтобы удостовериться, что сборка стабильна для дальнейшего тестирования.
- Санитарное (Sanity Testing): Быстрая проверка новой или измененной функциональности после небольших изменений.
Исследовательское тестирование (Exploratory Testing): Одновременное проектирование, выполнение и изучение тестов.
Позитивное и негативное тестирование:
- Позитивное: Тестирование на основе ожидаемых/корректных входных данных и сценариев.
- Негативное: Тестирование с использованием некорректных или неожиданных данных/сценариев для проверки поведения системы на ошибки.