Реклама:

В программе прежде всего автоматически выделяются циклы описанными выше методами. В циклах определяются маршруты, подлежащие тестированию. Для этого используются указания разработчика о стратегии выделения маршрутов при тестировании циклов. Кроме того, в содержание стратегии вводятся указания о количестве итераций циклов и их связях с маршрутами исполнения циклов. В результате разработчику отображаются данные о маршрутах в циклах, которые подлежат тестированию по выбранной стратегии. Возможно автоматическое выделение некоторых циклов, которые реально не исполняются по условиям изменения переменных, использующихся в предикатах маршру-, тов. Разработчик может выделить циклы и маршруты, подлежащие исключению из планов автономного тестирования циклов илн при тестировании полных маршрутов, содержащих циклы.

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

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

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

Липаев В. В. Тестирование программ.

Рис. 3.18. Схема подготовки данных для планирования тестирования иия переменных для каждого нз маршрутов и для программы в целом. По числу границ областей изменения переменных осуществляется оценка числа тестов, необходимых для проверки процессов обработки данных в анализируемой программе.


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