Ответ
Нефункциональное тестирование (Non-functional testing) — это тип тестирования, направленный на проверку как система работает, а не что она делает. Оно оценивает характеристики, не связанные с конкретной бизнес-логикой, но критически важные для пользовательского опыта и эксплуатации.
Ключевые виды нефункционального тестирования:
- Тестирование производительности (Performance):
- Нагрузочное (Load): Работа под ожидаемой нагрузкой.
- Стрессовое (Stress): Работа за пределами нормальной нагрузки.
- Объемное (Volume/Soak): Работа с большими объемами данных или в течение длительного времени.
- Тестирование безопасности (Security): Выявление уязвимостей, проверка аутентификации и авторизации.
- Тестирование удобства использования (Usability): Оценка понятности, обучаемости и удобства интерфейса.
- Тестирование совместимости (Compatibility): Работа в разных браузерах, ОС, устройствах.
- Тестирование надежности (Reliability): Способность работать без сбоев в заданных условиях.
Почему это важно? Функционально корректное приложение может быть непригодным из-за медленной скорости, утечек памяти или плохой безопасности.
Пример (концепция нагрузочного теста):
// Псевдоконфигурация для JMeter
Thread Group:
Number of Threads (users): 100
Ramp-Up Period: 30 seconds // Наращивание нагрузки до 100 пользователей за 30 сек
Loop Count: Forever
// Цель: проверить, выдерживает ли API 100 одновременных запросов.