Некоторые виды тестирования и их классификация:
По степени автоматизации: 4
- Ручное. 47 Тестировщик проверяет программное обеспечение вручную, выполняет действия, которые мог бы совершить обычный пользователь. 4 Такой метод эффективен, когда нужно проверить нестандартные сценарии или оценить удобство использования системы. 4
- Автоматизированное. 47 Для проверки используются специальные инструменты, которые выполняют тесты без участия человека. 4 Такой вид тестирования подходит для проверки производительности или функциональности программного обеспечения. 4
По объекту тестирования: 6
- Функциональное. 6 Проверяется, способна ли программа выполнить предназначенные ей функции без сбоев и других проблем. 6 Есть несколько подвидов: модельное, интеграционное, системное и приёмочное тестирование. 6
- Нефункциональное. 6 Проверяются составляющие программного обеспечения, которые не имеют прямого отношения к функционалу. 6 Обычно речь идёт о таких параметрах, как производительность, надёжность, безопасность, масштабируемость и совместимость. 6
По доступу к коду и архитектуре: 1
- Тестирование белого ящика. 1 Тестировщику нужен полный доступ к коду проекта. 1
- Тестирование серого ящика. 1 Тестировщик обладает частичным доступом к коду проекта. 1
- Тестирование чёрного ящика. 1 Тестировщику не требуется иметь знания о внутренней архитектуре или реализации системы. 5
По фазе жизненного цикла: 2
- Тестирование в процессе разработки. 2 Проверка на ранних стадиях разработки для обнаружения поломок. 2
- Тестирование перед выпуском. 2 Финальное тестирование перед выпуском продукта. 2
- Тестирование после выпуска. 2 Тестирование после выпуска для обнаружения дефектов и улучшения продукта. 2
Некоторые виды тестирования связаны друг с другом:
- Модульное тестирование фокусируется на изоляции и проверке отдельных компонентов, интеграционное — на взаимодействии между ними, а системное — на общей работоспособности системы. 8
- Функциональное тестирование эффективно на ранних этапах разработки — с его помощью проверяется соответствие требований к функционалу. 8 Нефункциональное актуально на этапе оптимизации перед выпуском продукта. 8
- Тестирование безопасности нужно для поиска и устранения уязвимостей, гарантии защищённости продукта от внешних атак. 8 Тестирование функциональности обеспечивает корректную работу, производительности — эффективность, а безопасности — защиту от угроз. 8