Файл: Практическая работа 10 Тема Тестирование программного продукта методом белого ящика.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 09.01.2024

Просмотров: 50

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Практическая работа №10

Тема: Тестирование программного продукта методом «белого ящика».

Цель: изучить принципы тестирования методом «белого ящика», используя анализ граничных значений.

Ответы на вопросы для допуска к лабораторному заданию

  1. Охарактеризуйте понятие «тестирование «белого ящика». К какому виду тестирования он относится?

Тестирование по стратегии белого ящика — тестирование кода на предмет логики работы программы и корректности её работы с точки зрения компилятора того языка, на котором она писалась. Стратегия белого ящика относится к функциональному виду тестирования.

  1. Перечислите и охарактеризуйте особенности потокового графа.

Особенности потокового графа:

1. Граф отображает управляющую структуру программы. Закрывающие скобки условных операторов и циклов (end if, end loop) рассматриваются как отдельные (фиктивные) операторы.

2. Узел (вершина) потокового графа соответствуют линейным участкам программы и включают один или несколько операторов.

3. Дуги (ориентированные ребра) потокового графа отображают поток управления в программе (передача управления между операторами).

4. Различают операторные и предикатные узлы. Из операторного узла выходит одна дуга, а из предикатного - две дуги.

5. Предикатные узлы соответствуют простым условиям в программе. Составным называется условие, в котором используются булевы операции (OR, AND).

Практическая часть

  1. Написать программу согласно варианту, на языке программирования C#. Условие: Даны натуральное число N и одномерный массив А1, А2, ..., AN целых чисел. В данном массиве определить число соседств двух чисел разного знака

  2. На рисунке 1 показан алгоритм программы, а на рисунке 2 изображен потоковый граф программы.



Рисунок 1 – Алгоритм программы


Рисунок 2 – Потоковый граф программы


  1. Определить цикломатическую сложность потокового графа.

V(G)= 20(E) – 14(N) + 2 = 8 или по второй формуле


V(G)= 7(P) + 2 = 8

  1. Построить базовое множество независимых линейных путей.

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).


Таблица 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. Дайте определение цикломатической сложности и укажите способы вычисления.

Цикломатическая сложность – это матрица ПО, которая обеспечивает количественную оценку логической сложности программы.

Цикломатическая сложность вычисляется одним из трех способов:

1) равна количеству регионов потокового графа;

2) определяется по формуле V(G) = Е – N + 2, где Е – количество дуг, N – количество узлов потокового графа;

3) определяется по формуле V(G) = р + 1, где р – количество предикатных узлов в потоковом графе.
Вывод: изучены принципы тестирования методом «белого ящика», используя анализ граничных значений.