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