Реклама:

«динамические» отмечается наличие изменения параметра «реальное время» в процессе тестирования. В этом случае «статическими» методами и средствами называются такие, которые обеспечивают тестирование КП при их исполнении для фиксированных значений реального времени. В дайной главе понятие «статические» и «динамические» средства тестирования программных модулей соответствуют первому случаю, т. е. связываются с наличием исполнения программ при их проверке.

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

Методика тестирования программных модулей. Особенностью методики является систематическое применение методов, начиная с простейших и характеризующихся наименьшими, затратами, в порядке увеличения их способности обнаруживать и локализовать наиболее сложные ошибки (рис. 3.2). Для каждого этапа на схеме дается содержание основных работ и показаны связи на последующие и предыдущие этапы. Возврат на предыдущие этапы тестирования является достаточно типичным и обусловлен чаще всего необходимостью дополнительных проверок после корректировок программ. На схеме представленій некоторые вспомогательные работы, несколько иначе и не полностью отражены частные методы, приведенные на рис. 3.1. Тем самым выделены наиболее важные задачи для методики тестирования модулей.

Эту схему целесообразно использовать в качестве основы при создании рабочих методик тестирования для конкретных проектов. В зависимости от особенностей.проектов некоторые работы могут увеличивать свое значение, а другие исключаться из рабочей методики. В данной главе основное внимание сосредоточено на методах, используемых на первых четырех этапах тестирования (рис. 3.2). Функциональное тестирование более широко применяется для проверки групп и комплексов программ (см. гл. 4).

3.7. ТЕСТИРОВАНИЕ МОДУЛЕЙ БЕЗ ИСПОЛНЕНИЯ ПРОГРАММ

Ручное тестирование. Существенное повышение производительности труда при разработке программ и ускорение обнаружения ошибок обеспечивают методы систематической проверки программ за рабочим столом без применения ЭВМ. Высокая эффективность ручных методов тестирования достигается благодаря: сокращению затрат на трансляцию программ после исправления каждой ошибки, уменьшению числа отладочных заданий и затрат на их исполнение иа ЭВМ, а также раннему обнаружению наиболее массовых и грубых ошибок. Экспериментально' установлено, что в модулях ручными методами удается обнаруживать от 30 до 70% программных и алгоритмических ошибок из общего числа ошибок, выявленных при тестировании [14, 451. При бсобо методичном применении ручного тестирования и инспекций доля обнаруживаемых сшибок достигает 80%. При этом одновременно осуществляется доработка программ в направлении улучшения их структуры и логики обработки данных, а также в направлении снижения психологической сложности и сложности последующего автоматизированного тестирования на ЭВМ.


⇐ Предыдущая страница| |Следующая страница ⇒