Как мы это делаем?
Функциональное тестирование подразумевает проверку функций, выполняемых системой, которые были в нее заложены на этапе идеи и проектирования. Также проверяется бизнес логика приложения и все вариации ее ветвления в зависимости от внешних и внутренних условий. Весь подход основывается на требованиях и спецификациях системы и её отдельных модулей.
Для проведения данного вида тестирования изначально планируется объем проверок, подготавливаются тестовые данные и тестовые сценарии использования продукта, на основе описанных спецификаций и ограничений, накладываемых на потоки данных и бизнес-процессы. При проведении тестирования с учетом всех особенностей происходит обнаружение несоответствий в фактической реализации и планируемой реализации, что позволяет в дальнейшем исправить найденные дефекты.
Зачем проводить функциональное тестирование?
Например, в ходе реализации одного из модулей системы не были учтены диапазоны передаваемых значений и в случаях, когда передаваемые значения оказывались за границами допустимого диапазона, получаемое значение вызвало критический сбой в работе системы.
При проведении функционального тестирования данный диапазон в обязательном порядке проверяется на валидные и не валидные значения, что позволяет проверить все вариации передаваемых данных и обнаружить данный дефект до того как он попадет конечному пользователю, где смог бы вызвать проблемы в работе с продуктом.
Уверенность в корректности всех расчетов
При создании рабочего прототипа одного из модулей была некорректно интерпретирована бизнес-логика его работы, описанная в документации, в ходе чего при расчете значений одной из величин, результат, выдаваемый модулем отличался от корректного при определенном стечении обстоятельств.
Особенно важно то, что такой некорректный расчет происходил лишь при определенном значении другой переменной, которая получалась из смежного модуля, поэтому в большинстве случаев результат расчета по формуле все же получался правильный.
В ходе функционального тестирования расчетов на соответствие всем ветвлениям бизнес логики была обнаружена зависимость, что некорректный расчет производится лишь в одном конкретном случае. Ситуация была детально исследована и передана в разработку для исправления.
Таким образом, сопоставление всех ожидаемых и фактических результатов позволило обнаружить дефект логики и устранить его, получив полностью корректный расчет.
Какая польза от проведения функционального тестирования?
Благодаря применению функционального тестирования в составе процесса обеспечения качества для любого программного продукта, получают следующие результаты: