Описание

В зависимости от степени доступа к коду системы можно выделить два типа функциональных испытаний:

тестирование black box (черный ящик) – проведение функционального тестирования без доступа к коду системы,
тестирование white box (белый ящик) – функциональное тестирование с доступом к коду системы.
Тестирование black box проводится без знания внутренних механизмов работы системы и опирается на внешние проявления ее работы. При этом тестировании проверяется поведение ПО при различных входных данных и внутреннем состоянии систем. В случае тестирования white box создаются тест-кейсы, основанные преимущественно на коде системы ПО. Также существует расширенный тип black-box тестирования, включающего в себя изучение кода, – так называемый grey box (серый ящик).

Ключевые преимущества
1 Функциональное тестирование ПО полностью имитирует фактическое использование системы.
2 Позволяет своевременно выявить системные ошибки ПО и, тем самым, избежать множества проблем при работе с ним в дальнейшем.
3 Экономия за счет исправления ошибок на более раннем этапе жизненного цикла ПО.

Направления функционального тестирования
Регрессионное тестирование
Тестирование функциональности продукта после исправления ошибок или реализации новых функциональных возможностей

Интеграционное тестирование
Тестирование взаимодействий между компонентами системы и между несколькими системами.

Тестирование безопасности
Оценка уязвимости ПО к различным атакам и попыткам несанкционированного доступа к данным.

Smoke-тестирование
Короткий цикл тестов для выявления правильной работы основных функций приложения.

Системное тестирование
Проверка соответствия ПО требованиям, заявленным в спецификации

Тестирование документации
Проверка документов на соответствие принятым стандартам, а также соответствие определенным характеристикам

Тестирование мобильных приложений
Выявление дефектов в работе графического интерфейса

Обеспечение тестового покрытия
Оценка плотности покрытия системы тестами

Тестирование установки
Тестирование процесса инсталляции/деинсталляции программного обеспечения;

Тестирование удобства использования
Определение степени удобства использования, понятности и привлекательности разрабатываемого продукта

Конфигурационное тестирование
Проверка работы ПО на различных программных и аппаратных окружениях.