Системное тестирование — это уровень тестирования, который проверяет завершенную и интегрированную систему на соответствие функциональным и нефункциональным требованиям, указанным в спецификации.
Цели системного тестирования:
- Определить, соответствует ли система бизнес-требованиям.
- Проверить взаимодействие всех компонентов системы.
- Обеспечить общую стабильность и производительность системы.
Системное тестирование обычно проводится на полностью интегрированной системе после модульного и интеграционного тестирования. Это тестирование "черного ящика", что означает, что тестировщик не имеет доступа к внутреннему коду или структуре системы.
Типы системного тестирования:
- Функциональное тестирование (Functional Testing): Проверка функций системы на соответствие требованиям.
- Нефункциональное тестирование (Non-functional Testing): Проверка аспектов производительности, безопасности, надежности, удобства использования и т.д.
- Тестирование производительности (Performance Testing): Измерение скорости, масштабируемости и стабильности системы под нагрузкой.
- Тестирование безопасности (Security Testing): Проверка системы на наличие уязвимостей и угроз.
- Тестирование надежности (Reliability Testing): Оценка способности системы выполнять свои функции в течение определенного периода времени без сбоев.
- Тестирование удобства использования (Usability Testing): Оценка того, насколько легко и интуитивно понятно пользователю взаимодействовать с системой.
- Тестирование совместимости (Compatibility Testing): Проверка работы системы в различных окружениях (разные операционные системы, браузеры и т.д.).
Пример сценария тестирования (псевдокод):
python