Виды функционального тестирования и их особенности

Мобильные технологии произвели переворот не только в сфере программного обеспечения, но и других отраслях, необязательно связанных с мобильным рынком. Независимо от сферы бизнеса, качество мобильных и веб продуктов играет ключевую роль в привлечении пользователей и повышении репутации компании. Для того, что потраченные на разработку усилия не прошли даром, обязательным условием является проведение комплексной оценки качества готового продукта с привлечением квалифицированных тестировщиков программного обеспечения.

Функциональное тестирование – один из основных видов тестирования ПО, нацеленный на проверку разрабатываемого продукта на соответствие функциональным требованиям. Другими словами, тестировщики оценивают, может ли готовое приложение осуществлять задачи, предъявленные заказчиком.  

Выделяют следующие виды функционального тестирования:

- Компонентное. Оно нацелено на проверку функциональности отдельных частей приложения, в том числе объекты, классы, функции. Главная задача тестировщика, не без помощи разработчика, - выделить физически изолируемые части системы, которые подлежат тестированию. Существует два подхода к компонентному тестированию, при которых тесты-кейсы реализуются еще до начала написания программного кода.

- Интеграционное. Данный вид тестирование – противоположность компонентному тестированию, в котором целью анализа является результат взаимодействия между различными компонентами системы. Интеграционное тестирование реализуется после модульного тестирования, используя модули, на базе которых проводилось модульное.

- Системное. На данном этапе разрабатываемый продукт тестируется в том состоянии, в котором он будет реально использоваться после внедрения в эксплуатацию. Системное тестирование позволяет найти такие неточности приложения как ошибки при взаимодействии с другими системами, отсутствие требуемого функционала, т.д.

- Приемочное. Это завершающий этап тестирования приложений iphone и андроид перед запуском в эксплуатацию.  Набор тестовых кейсов направлен на установление соответствия тестируемого продукта требованиям к данному приложению.

- Регрессионное. Перед тестировщиком программного обеспечения стоит задача оценить работу приложения после внесения модификаций в программный код или изменения его функционала. При этом, важно убедиться, что новая версия системы работает корректно.