Лекция 6. Автоматные методы построения тестов (основные понятия) (1186165), страница 3
Текст из файла (страница 3)
Еслиспецификация сильно связна, ее обход существует.•При тестировании на основе обхода берем одну из входных последовательностей,при применении которой выполняется обходов спецификации. В начале и послекаждого стимула вставим действие S. Полученный тест проверяет каждый переходспецификации, и если реализация возвращает всегда те же реакции и те жеидентификаторы состояний, она эквивалентна спецификации.При использовании методов прямого тестирования и обхода гипотеза об ограниченностичисла состояний в реализации не используется, поскольку есть мощный инструментнаблюдения реальных состояний — действие status.•a/xa/xb/x01b/yb/ya/y2Построим полные тесты по двум описанным методам для изображенного выше автомата.ПометодупрямоготестированияполучаемпоследовательностьT(0)aST(0)bST(1)aST(1)b ST(2)aST(2)bS.
Выходная последовательность при этом должнабыть равна x0y2x1x0y2y1.Обход изображенного автомата выполняется, например, при применении входнойпоследовательности ababab. По методу обхода получаем тест из входной последовательностиSaSbSaSbSaSbS и корректной выходной последовательности 0x0y2y2y1x1x0.Заметим, что при тестировании с помощью обхода действие status дает существеннуюинформацию, без которой этот метод тестирования не может доказать эквивалентностьавтоматов.a/xa/xb/x0a/x10b/y2b/xb/yb/ya/ya/x1b/ya/y2Рассмотрим два автомата, изображенных выше. Автомат слева (тот же, что в разобранномвыше примере) будет спецификацией, автомат справа — реализацией. Возьмем другой обходспецификации — bababa.
Получаем тест SbSaSbSaSbSaS/0y2y2y1x1x0x0. Напредложенной реализации этот тест дает выходную последовательность 0y2y2y1x1x0x1,которая отличается от корректной только в одном месте — последнем идентификаторесостояния.Легко видеть, что сложность тестирования автомата с n состояниями и p стимуламиметодом прямого тестирования равна 3pn. Для метода обхода она не превосходит 2pn2 исуществуют автоматы, для которых она имеет порядок O(pn2).В следующей лекции рассматриваются более сложные методы тестирования автоматов,предназначенные для тех случаев, когда нет надежно работающих действий status и reset.Литература[1] M.
Broy, B. Jonsson, J.-P. Katoen, M. Leucker, A. Pretschner (eds.). Model Based Testing ofReactive Systems. LNCS 3472, Springer, 2005.[2] В. Б. Кудрявцев, С. В. Алешин, А. С. Подколзин. Введение в теорию автоматов.М.: Наука, 1985..