Lecture03 (Лекции в ПДФ), страница 6
Описание файла
Файл "Lecture03" внутри архива находится в папке "Лекции в ПДФ". PDF-файл из архива "Лекции в ПДФ", который расположен в категории "". Всё это находится в предмете "тестирование на основе моделей" из 9 семестр (1 семестр магистратуры), которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .
Просмотр PDF-файла онлайн
Текст 6 страницы из PDF
Вприведенных аксиомах X можно заменять на произвольный терм. Терм считаетсяправильным, если выполнено следующее.•Операция add(i, o) применяется в нем только к подтермам X, про которые можнодоказать, что i <= X.size().•Операции remove(i) и get(i) применяются в нем только к подтермам X, про которыеможно доказать, что i < X.size().В аксиомах [X] ≡ [Y] означает эквивалентность термов X и Y, так что в любомвысказывании X можно заменять на Y и обратно без изменений в истинности этоговысказывания.
Из этих аксиом можно доказать, что любой список, т.е. правильный терм,эквивалентен терму, получаемому конечной цепочкой операций add(), в которыхиспользуются значения первого параметра, на единицу меньшие номера вызова операции вцепочке, — это канонический вид списка. Длиной терма назовем количество операций,участвующих в нем.Тестами можно считать произвольные термы.Метрикой покрытия аксиом можно считать долю тех аксиом, которые используются приприведении заданного набора тестов к каноническому виду, среди всех выписанных аксиом.Метрикой покрытия термов длины <=k можно считать долю термов длины <=k,используемых в тестах или появляющихся в процессе их приведения к каноническому виду,среди всех термов длины <=k.К сожалению, для алгебраических моделей трудно обосновать выбор k такого, что стоитпытаться добиться полного покрытия всех термов длины <=k, но не стоит пытаться покрытьвсе термы длины <=(k+1).Автоматные моделиГораздо более широко используют описания поведения программных систем в видеконечныхавтоматовилиихрасширений—расширенных,бесконечных,взаимодействующих, иерархических автоматов, систем переходов и т.д.У всех видов автоматов имеются состояния и переходы.
Соответственно, для всех видовавтоматов можно определить следующие метрики покрытия.Метрика покрытия состояний — доля тех состояний, в которых система побывала вовремя тестирования, по отношению к количеству всех достижимых состояний.Метрика покрытия переходов — доля переходов, выполненных во время тестирования,по отношению к числу всех достижимых переходов.Метрика покрытия цепочек переходов длины k — доля выполненных при тестированиицепочек последовательных переходов дины k по отношению к общему количествудостижимых цепочек последовательных переходов длины k.Например, для конечного автомата, изображенного ниже, достаточно выполнить цепочкувходов abb, чтобы побывать во всех состояниях. Покрытие переходов при этом будет равнотолько 3/8 = 37.5%.a/y0b/xa/x1b/zb/ya/z2b/x3a/yЧтобы покрыть все переходы, можно выполнить цепочку bbabbaaa.
Покрытие парпоследовательных переходов при этом равно 7/16 = 43.75%.Покрытые пары последовательных переходов: 0-aa, 0-ab, 0-ba, 0-bb, 1-aa, 1-ab, 1-ba, 1-bb,2-aa, 2-ab, 2-ba, 2-bb, 3-aa, 3-ab, 3-ba, 3-bb.В описании расширенных автоматов участвуют предикаты-охранные условия переходов.Поэтому при определении метрик покрытия для расширенных автоматов можноиспользовать те же подходы, что и для определения метрик покрытия условий, ихкомбинаций и MC/DC.Литература[1][2][3][4][5]IEEE Guide to Software Engineering Body of Knowledge, SWEBOK, 2004.H. Zhu, P. A. V. Hall, J.
H. R. May. Software Unit Test Coverage and Adequacy. ACMComputing Surveys, 29(4):366-427, Dec. 1997.B. Beizer. Software Testing Techniques. International Thomson Press, 1990.S. Rapps, E. J. Weyuker. Selecting Software Test Data Using Data Flow Information. IEEETransactions on Software Engineering 11:367–375, 1985.P. G. Frankl, E. J. Weyuker. An Applicable Family of Data Flow Testing Criteria. IEEETransactions on Software Engineering 14:1483–1498, 1988..