Ћекции.ќрг


ѕоиск:




 атегории:

јстрономи€
Ѕиологи€
√еографи€
ƒругие €зыки
»нтернет
»нформатика
»стори€
 ультура
Ћитература
Ћогика
ћатематика
ћедицина
ћеханика
ќхрана труда
ѕедагогика
ѕолитика
ѕраво
ѕсихологи€
–елиги€
–иторика
—оциологи€
—порт
—троительство
“ехнологи€
“ранспорт
‘изика
‘илософи€
‘инансы
’ими€
Ёкологи€
Ёкономика
Ёлектроника

 

 

 

 


“естирование базового пути




Ѕазовые пон€ти€

ѕервым будет рассмотрен способ тестировани€ базового пути, который был разработан в 1976 году “омом ћак- лером.   главным преимуществам этого способа относ€тс€:

a) возможность получить оценку комплексной сложности программы;

b) возможность определить необходимое количество тестовых вариантов на основании данной оценки.

ƒл€ усвоени€ рассматриваемого способа тестировани€ следует изложить и по€снить р€д базовых пон€тий. Ќаписанна€ программа представл€етс€ в виде потокового графа.   особенност€м такого графа можно отнести:

a) граф строитс€ отображением управл€ющей структуры программы;

b) вершины (узлы) графа соответствую линейным участкам программы;

c) граф ориентирован и его дуги отображают поток управлени€ в программе;

d) среди вершин различают операторные вершины и предикатные вершины;

e) предикатные вершины соответствуют простым услови€м. —оставное условие (условие, содержащее одну или несколько булевых операций) отображаетс€ через набор предикатных вершин;

f) замкнутые области на графе, образованные дугами и вершинами, называютс€ регионами. ѕри этом, окружающа€ граф среда, рассматриваетс€ как дополнительный регион.

—огласно данной стратегии тестировани€ должно быть записано достаточное число тестов, такое, что каждое решение на этих тестах примет значение истина и ложь, по крайней мере, один раз. »ными словами, каждое направление перехода должно быть реализовано хот€ бы один раз. ѕримерами операторов перехода или решений €вл€ютс€ операторы while или if.

÷икломатическа€ сложность

÷икломатическа€ сложность представл€ет собой метрику программного обеспечени€, котора€ обеспечивает количественную оценку логической сложности программы. ÷икломатическа€ сложность определ€ет количество независимых путей в базовом множестве программы, а также определ€ет верхнюю оценку количества тестов.

¬се независимые пути графа образуют базовое множество.   свойствам базового множества относ€тс€:

a) мощность базового множества равна цикломатической сложности потокового графа;

b) в случае выполнени€ некоторых тестов гарантируетс€ проверка базового множества.

“естовый вариант - это однократное выполнение каждого оператора и проверка выполнени€ каждого услови€ по ветви FALSE и по ветви TRUE.

—уществует три способа дл€ вычислени€ цикломатической сложности:

a) посредством определени€ количества регионов: , где - количество регионов;

b) по формуле через количество вершин и дуг: , где - количество дуг, - количество вершин;

c) по формуле через предикатные узлы: , где Ц количество предикатных узлов.

јлгоритм тестировани€ методом базового пути

“естирование данным методом будет рассмотрено на примере процедуры сортировки вставкой. јлгоритм сортировки вставкой в псевдокоде записываетс€ следующим образом:

Insertion_Sort(A)

1 for j 2 to length[ A ]

2 do key A [ j ]

3 i j Ц 1

4 while i > 0 и A [ i ] > key

5 do A [ i + 1] A [ i ]

6 i i Ц 1

7 A [ i + 1] key

8 endfor

Ўаги тестировани€ методом базового пути:

Ўаг 1. ѕостроение потокового графа на основе выше представленного текста программы. ƒл€ начала следует пронумеровать операторы текста, разбив его тем самым на логические блоки.

»зменение нумерации операторов в соответствие с логикой программы:

1 for j 2 to length[ A ]

2 do key A [ j ]

2 i j Ц 1

3 и 4 while i > 0 и A [ i ] > key

5 do A [ i + 1] A [ i ]

6 i i Ц 1

7 A [ i + 1] key

8 end for

ѕусть length[ A ] ó N.

Ќа построенном графе также обозначаютс€ регионы (рисунок 1).

–исунок 1 Ц ѕотоковый граф процедуры Insertion_Sort

Ўаг 2. ќпределение цикломатической сложности построенного потокового графа. ƒл€ этого используютс€ все три вышеописанных способа:

a) ;

b) ;

c) .

“аким образом, цикломатическа€ сложность потокового графа равна 6.

Ўаг 3. ќпределение базового множества независимых путей, количество которых определ€етс€ по цикломатической сложности:

ѕуть 1: 1-8 // N > 1, массив не отсортирован

ѕуть 2: 1-2-3-7-8 // N > 1

ѕуть 3: 1-2-3-4-7-8 // N > 1, массив отсортирован

ѕуть 4: 1-2-3-4-5-6-7-8 // N = 1

ѕуть 5: 1-2-3-4-5-6-7-1-8 // N > 3

ѕуть 6: 1-2-3-4-5-6-3-Е-7-8 // N > 1

Ўаг 4. ѕодготовка тестовых вариантов (“¬):

“¬ 1: »сходные данные: N = 1, A = {5} Ц массив состоит из одного элемента.

ќжидаемый результат: A = {5}; массив упор€дочен.

“¬ 2: »сходные данные: N = 5, A = {5, 10, 1, 18, 6} Ц не отсортированный массив от 2 до N элементов.

ќжидаемый результат: A = {1, 5, 6, 10, 18}; массив упор€дочен.

“¬ 3: »сходные данные: N = 5, A = {5, 10, 1, 18, 6} Ц проверка услови€ остановки сдвижки элементов массива (размером от 2 до N) влево (i > 0).

ќжидаемый результат: A = {1, 5, 6, 10, 18}; массив упор€дочен.

“¬ 4: »сходные данные: N = 7, A = {1, 2, 3, 5, 6, 9, 29} Ц отсортированный массив от 2 до N элементов.

ќжидаемый результат: A = {1, 2, 3, 5, 6, 9, 29}; массив упор€дочен.

“¬ 5: »сходные данные: N = 5, A = {5, 10, 1, 18, 6} Ц проверка сдвижки элементов массива (размером от 2 до N) влево (i i Ц 1).

ќжидаемый результат: A = {1, 5, 6, 10, 18}; массив упор€дочен.

“¬ 6: »сходные данные: N = 4, A = {99, 78, 2, 41} Ц массив из i, где i 3.

ќжидаемый результат: A = {2, 41, 78, 99}; массив упор€дочен.

 





ѕоделитьс€ с друзь€ми:


ƒата добавлени€: 2015-10-01; ћы поможем в написании ваших работ!; просмотров: 1270 | Ќарушение авторских прав


ѕоиск на сайте:

Ћучшие изречени€:

Ћибо вы управл€ете вашим днем, либо день управл€ет вами. © ƒжим –он
==> читать все изречени€...

1244 - | 1092 -


© 2015-2024 lektsii.org -  онтакты - ѕоследнее добавление

√ен: 0.017 с.