![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Метод покрытия решений (покрытия переходов)
Согласно методу покрытия решений каждое направление перехода должно быть реализовано, по крайней мере, один раз. Этот метод включает в себя критерий покрытия операторов, так как при выполнении всех направлений переходов выполнятся все операторы, находящиеся на этих направлениях. Для пояснения данного метода рассмотрим пример построения тестов и технологии исследования алгоритма на их основе. Пример 1. Задание:
Для алгоритма (рис.1) построить тесты на основе метода покрытия решений и выполнить исследование соответствующего алгоритма.
а) б) Рис. 1. Пример алгоритма программы: а — без ошибок; б — с ошибками
Решение: Покрытие решений может быть выполнено двумя тестами, покрывающими пути. При этом существуют два варианта таких путей: Первый вариант - (асе, abd); Второй вариант - (acd, abe). Рассмотрим тесты, применительно ко второму варианту. Для этого выберем следующие два теста, соответствующие этому варианту: 1. Тест Т1(А=3, В=0, X=3) — для пути P1= (acd) 2. Тест Т2(А =2, В=1, Х=1) — для пути P2=(abe). Проведем исследования тестами исходного алгоритма (рис.1a) и алгоритма с ошибками (рис. 1b). Исследование предполагает построение протокола теста и диаграммы состояний теста для исходного алгоритма и для алгоритма с ошибками в операторах проверки условий, например, с операторами вида: U1=(A> 1)or(B=0), U2=(A=2)or(X< 1). Для проведения исследования введем в рассмотрение следующие формальные обозначения для приведенных схем алгоритмов: 1. Т1(А=3, В=0, X=3) - тест 1; 2. Т2(А=2, В=1, Х= 1) – тест 2; 3. U1=(A> 1)and(B=0) - оператор проверки условия, принимает значения 1, если условие выполняется и значение 0, если условие не выполняется; 4. U2=(A=2)or(X> 1) - оператор проверки условия, принимает значения 1, если условие выполняется и значение 0, если условие не выполняется; 5. D1=(X=X/A) - оператор действия, принимает значение X; 6. D2=(X=X+1) - оператор действия, принимает значение X; 7. R1(…), R2(…) – выходные результаты после тестирования. Исследование тестом Т1(А=3, В=0, X=3)
|