Тестирование – это проверка между реальным и ожидаемым поведением системы, это проверка на соответствие разработанного функционала требованиям. Тестирование также является деятельностью по обеспечению качества ПО.
Цели и задачи тестирования — основной задачей тестирования ПО является получение информации о статусе готовности заявленной функциональности системы или приложения.
Задачи — повысить вероятность того, что приложение, предназначенное для тестирования, будет работать правильно при любых обстоятельствах, будет соответствовать всем описанным требованиям. Предоставление актуальной информации о состоянии продукта на данный момент.
Цели тестирования:
- Обнаружение дефектов
- Повышение уверенности в уровне качества
- Предоставление информации для принятия решений
- Предотвращение дефектов
Виды (типы) тестирования
Функциональное/нефункциональное.
Функциональное: тестирование компонентов и модулей, интеграционное (проверка взаимодействия), системное, приемочное, нового функционала, регресс, на соответствие бизнес требованиям, смоук- тестирование (проверка основного функционала с помощью выборочных тест кейсов).
Нефункциональное: безопасность, стрессовое, нагрузочное, установка, отказ и восстановление, юзабилити, конфигурационное (портируемость).
Опционально: выделяют третий вид тестирования — связанный с изменениями, к которому относят регресс, смоук, тестирование сборки.
Тестирование по уровням:
Модульное, интеграционное, системное, операционное (опционально), приемочное.
Тест-план или план тестирования — высокоуровневый документ, включающий в себя весь объем работ и документов, от а до я.
Тестовая модель — включает в себя цели, задачи, приоритеты, требования, тестовые сценарии по модулям, процент покрытия тестами.
Верификация — соответствие ПО бизнес-требованиям.
Валидация — пользовательским.