Тестирование объектно-ориентированных программ моделированием конечными автоматами
В статье рассматривается метод определения входных данных для модульного и интеграционного тестирования объектно-ориентированного программного обеспечения на основе моделирования классов конечными автоматами. Приведен пример построения автоматной граф-модели.
Авторы
Тэги
Тематические рубрики
Предметные рубрики
В этом же номере:
Резюме по документу**
С. Н. Малинин
ТЕСТИРОВАНИЕ ОБЪЕКТНО-ОРИЕНТИРОВАННЫХ
ПРОГРАММ МОДЕЛИРОВАНИЕМ
КОНЕЧНЫМИ АВТОМАТАМИ
Аннотация. <...> В статье рассматривается метод определения входных данных для
модульного и интеграционного тестирования объектно-ориентированного программного
обеспечения на основе моделирования классов конечными автоматами. <...> Одним из способов преодоления сложности анализа, проектирования
и реализации ПО является объектно-ориентированный подход. <...> Большинство
существующих методик тестирования относятся к структурному тестированию,
основанному на знании внутренней структуры программной системы. <...> Процесс построения набора тестов при структурном тестировании основывается
на конструировании графа-модели программы (ГМП). <...> Любой программный
модуль можно представить графически в виде укрупненной блок-схемы. <...> Блокам
укрупненной блок-схемы соответствуют операторы – предикаты или линейные
цепочки операторов, т.е. совокупности последовательно выполняемых
операторов, каждый из которых имеет один вход и один выход. <...> Блокам,
имеющим больше одного приемника, будут соответствовать логические выражения,
в зависимости от значений которых и будет производиться передача
управления. <...> Связям между блоками такой
схемы соответствуют линии передачи управления. <...> Структуру блок-схемы
в этом случае можно представить в виде ориентированного графа по управлению. <...> Множество вершин графа отображает блоки укрупненной блок-схемы,
а множество дуг – передачи управления между блоками. <...> Но на практике тестирование объектно-ориентированного программного
обеспечения затруднено тем фактом, что тестируемая программа состоит
как из вновь разрабатываемых, так и из ранее написанных готовых компонентов. <...> Исходный код ранее написанных компонентов
не всегда доступен команде тестирования или внесение каких-либо
изменений с целью построения структуры программы в исходный код недопустимо,
что делает структурное тестирование <...>
** - вычисляется автоматически, возможны погрешности
Похожие документы: