Файл: Практическая работа 10 Тема Тестирование программного продукта методом белого ящика.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 09.01.2024
Просмотров: 50
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Практическая работа №10
Тема: Тестирование программного продукта методом «белого ящика».
Цель: изучить принципы тестирования методом «белого ящика», используя анализ граничных значений.
Ответы на вопросы для допуска к лабораторному заданию
-
Охарактеризуйте понятие «тестирование «белого ящика». К какому виду тестирования он относится?
Тестирование по стратегии белого ящика — тестирование кода на предмет логики работы программы и корректности её работы с точки зрения компилятора того языка, на котором она писалась. Стратегия белого ящика относится к функциональному виду тестирования.
-
Перечислите и охарактеризуйте особенности потокового графа.
Особенности потокового графа:
1. Граф отображает управляющую структуру программы. Закрывающие скобки условных операторов и циклов (end if, end loop) рассматриваются как отдельные (фиктивные) операторы.
2. Узел (вершина) потокового графа соответствуют линейным участкам программы и включают один или несколько операторов.
3. Дуги (ориентированные ребра) потокового графа отображают поток управления в программе (передача управления между операторами).
4. Различают операторные и предикатные узлы. Из операторного узла выходит одна дуга, а из предикатного - две дуги.
5. Предикатные узлы соответствуют простым условиям в программе. Составным называется условие, в котором используются булевы операции (OR, AND).
Практическая часть
-
Написать программу согласно варианту, на языке программирования C#. Условие: Даны натуральное число N и одномерный массив А1, А2, ..., AN целых чисел. В данном массиве определить число соседств двух чисел разного знака -
На рисунке 1 показан алгоритм программы, а на рисунке 2 изображен потоковый граф программы.
Рисунок 1 – Алгоритм программы
Рисунок 2 – Потоковый граф программы
-
Определить цикломатическую сложность потокового графа.
V(G)= 20(E) – 14(N) + 2 = 8 или по второй формуле
V(G)= 7(P) + 2 = 8
-
Построить базовое множество независимых линейных путей.
1-2-1-14, 1-2-3-4-1-14 и 1-2-3-4-5-1-14, 1-2-3-6-7-1-14 и 1-2-3-6-7-8-1-14,1-2-3-6-9-10-1-14, 1-2-3-6-9-11-12-1-14 и 1-2-3-6-9-11-13-1-14.
-
Составить тестовые варианты.
Тестовые варианты идентичны базовым путям.
-
Выполнение тестирования (таблица 1).
Таблица 1 – Результат выполнения тестирования
№ | Данные | Ожидаемый результат | Фактический результат | Результаты тестирования |
1 | А=3 В=-2 С=4 | X=2 смежных элемента (1-2-3-6-9-11-13-1-14) | X=2 смежных элемента | Успешно |
2 | А=-1 В=-2 С=-3 | X=0 смежных элементов | X=2смежных элементов | Провалено |
3 | А=5 В=-3 С=-7 | X=1 смежный элемент (1-2-3-6-9-11-12-1-14) | X=1 смежный элемент | Успешно |
4 | A=3 В=3 С=3 | X=0 смежных элементов (1-2-1-14) | X=0 смежных элементов | Успешно |
Контрольные вопросы
-
Дайте определение цикломатической сложности и укажите способы вычисления.
Цикломатическая сложность – это матрица ПО, которая обеспечивает количественную оценку логической сложности программы.
Цикломатическая сложность вычисляется одним из трех способов:
1) равна количеству регионов потокового графа;
2) определяется по формуле V(G) = Е – N + 2, где Е – количество дуг, N – количество узлов потокового графа;
3) определяется по формуле V(G) = р + 1, где р – количество предикатных узлов в потоковом графе.
Вывод: изучены принципы тестирования методом «белого ящика», используя анализ граничных значений.