Главная страница

Контрольные вопросы По теме структурное тестирование программного обеспечения


Скачать 22.54 Kb.
НазваниеКонтрольные вопросы По теме структурное тестирование программного обеспечения
Дата12.02.2022
Размер22.54 Kb.
Формат файлаdocx
Имя файлаKV_Alexey_Abrashov_P-36.docx
ТипКонтрольные вопросы
#359747

Контрольные вопросы

По теме: структурное тестирование программного обеспечения

Выполнил: студент группы П-36 Алексей Абрашов.

  1. Определите понятие тестирования.

Тестирование – это процесс выполнения программы с целью обнаружения ошибок.

  1. Что такое тест? Поясните содержание процесса тестирования.

Тест – шаги процесса тестирования. Каждый тест определяет свой набор исходных данных и условий для запуска программы, а также набор ожидаемых результатов работы программы. Другое название теста – тестовый вариант.

  1. Что такое исчерпывающее тестирование?

Исчерпывающее тестирование – полная проверка программы. Оно требует проверить все наборы исходных данных, все варианты их обработки и включает большое количество тестовых вариантов.

  1. Какие задачи решает тестирование?

Тестирование обеспечивает:

Обнаружение ошибок;

Демонстрацию соответствия функций программы её назначению;

Демонстрацию реализации требований к характеристикам программы;

Отображение надежности как индикатора качества программы.

  1. Каких задач не решает тестирование?

Тестирование не может показать отсутствие дефектов.

  1. Какие принципы тестирования вы знаете? В чем их отличие друг от друга?

Функциональное тестирование (тестирование «черного ящика») и структурное тестирование (тестирование «белого ящика»).

  1. В чем состоит суть тестирования «черного ящика»?

При тестировании «черного ящика» исследуется работа каждой функции на всей области определения.

  1. В чем состоит суть тестирования «белого ящика»?

При тестировании «белого ящика» исследуются внутренние элементы программы и связи между ними.

  1. Каковы особенности тестирования «белого ящика»?

Гарантируется проверка всех независимых маршрутов программы;

Проходятся ветви True, False для всех логических решений;

Выполняются все циклы;

Анализируется правильность внутренних структур данных.

  1. Какие недостатки имеет тестирование «белого ящика»?

Количество независимых маршрутов может быть очень велико;

Исчерпывающее тестирование маршрутов не гарантирует соответствия программы исходным требованиям к ней;

В программе могут быть пропущены некоторые маршруты;

Нельзя обнаружить ошибки, появление которых зависит от обрабатываемых данных.

  1. Какие достоинства имеет тестирование «белого ящика»?

Количество ошибок минимально в «центре» и максимально в «периферии» программы;

Предварительные предположения о вероятности потока управления или данных в программе часто бывают некорректны. В результате типовым может стать маршрут, модель вычислений по которому проработана слабо;

При записи алгоритма ПО в виде текста на языке программирования возможно внесение типовых ошибок трансляции;

Некоторые результаты в программе зависят не от исходных данных, а от внутренних состояний программы.

  1. Дайте характеристику способа тестирования базового пути.

Тестирование базового пути – способ, который основан на принципе «белого ящика». Этот способ даёт возможность: получить оценку комплексной сложности программы; использовать эту оценку для определения необходимого количества тестовых вариантов.

  1. Какие особенности имеет потоковый граф?

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

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

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

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

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

Замкнутые области, образованные дугами и узлами, называют регионами;

Окружающая граф-среда рассматривается как дополнительный регион.

  1. Поясните понятие независимого пути.

Независимым называется любой путь, который вводит новый оператор обработки или новое условие.

  1. Поясните понятие цикломатической сложности.

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

  1. Что такое базовое множество?

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

  1. Какие свойства имеет базовое множество?

Тесты, обеспечивающие проверку базового множества, гарантируют: однократное выполнение каждого оператора; выполнение каждого условия по True-ветви и по False-ветви;

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

  1. Какие способы вычисления цикломатической сложности вы знаете?

Цикломатическая сложность равна количеству регионов потокового графа;

Цикломатическая сложность определяется по формуле: V(G) = E – N + 2, где E – количество дуг, N – количество узлов потокового графа;
Цикломатическая сложность формируется по выражению V(G) = p + 1, где p – количество предикатных узлов в потоковом графе G.

  1. Поясните шаги способа тестирования базового пути.

Шаг 1. На основе текста программы формируется потоковый граф;

Шаг 2. Определяется цикломатическая сложность потокового графа – по каждой из трёх формул;

Шаг 3. Определяется базовое множество независимых линейных путей;

Шаг 4. Подготавливаются тестовые варианты, инициирующие выполнение каждого пути.

  1. Дайте общую характеристику способов тестирования условий.

Цель этого семейства способов тестирования — строить тестовые варианты для проверки логических условий программы. При этом желательно обеспечить охват операторов из всех ветвей программы.

  1. Какие типы ошибок в условиях вы знаете?

Ошибка булевой операции (наличие некорректных, отсутствующих, избыточных булевых операций);

Ошибка булевой переменной;

Ошибка булевой скобки;

Ошибка оператора отношения;

Ошибка арифметического выражения.

  1. Какие методики тестирования условий вы знаете?

Тестирование ветвей и тестирование области определения

  1. Поясните суть способа тестирования ветвей и операций отношений. Какие он имеет ограничения?

Способ тестирования ветвей и операторов отношений обнаруживает ошибки ветвления и операторов отношения в условии, для которого выполняются следующие ограничения: все булевы переменные и операторы отношения входят в условие только по одному разу; в условии нет общих переменных.

  1. Что такое ограничение на результат?

Ограничение на результат фиксирует возможные значения аргумента (переменной) простого условия (если он один) или соотношения между значениями аргументов (если их несколько).

  1. Что такое ограничение условия?

Это составное условие, включающее в себя несколько простых условий

  1. Что такое ограничивающее множество? Чем удобно его применение?

Ограничивающее множество – удобный инструмент для записи задания на тестирование, ведь оно составляется из сведений о значениях переменных, которые влияют на значение проверяемого условия.

  1. Поясните шаги способа тестирования ветвей и операций отношений.

Для каждого условия в программе выполняются следующие действия:

Строится ограничение условий ОУ;

Выявляются ограничения результата по каждому простому условию;

Сроится ограничивающее множество ОМ. Построение выполняется путем подстановки в константные формулы ОМ& или OMOR выявленных ограничений результата;

Для каждого элемента ОМ разрабатывается тестовый вариант.

  1. Поясните суть способа тестирования потоков данных.

В предыдущих способах тесты строились на основе анализа управляющей структуры программы. В данном способе анализу подвергается информационная структура программы.

  1. Что такое множество определений данных?

Вершина содержит определение данных.

  1. Что такое множество использований данных?

Вершина использует данные.

  1. Что такое цепочка определения-использования?

Конструкция типа [х, i, j], где i, j – имена вершин; х определена в i-й вершине (х DЕF(i)) и используется в j-й вершине (х USE(j)).

  1. Поясните шаги способа тестирования потоков данных.

Построение управляющего графа (УГ) программы;

Построение информационного графа (ИГ);

Формирование полного набора DU-цепочек;

Формирование полного набора отрезков путей в управляющем графе (отображением набора DU-цепочек информационного графа,);

Построение маршрутов – полных путей на управляющем графе, покрывающих набор отрезков путей управляющего графа;

Подготовка тестовых вариантов.

  1. Поясните достоинства, недостатки и область применения способа тестирования потоков данных.

Достоинства DU-тестирования:

Простота необходимого анализа операционно-управляющей структуры программы;

Простота автоматизации.

Недостаток DU-тестирования: трудности в выборе минимального количества максимально эффективных тестов.

Область использования DU-тестирования: программы с вложенными условными операторами и операторами цикла.

  1. Поясните особенности тестирования циклов.

Цикл – наиболее распространенная конструкция алгоритмов, реализуемых в ПО. Тестирование циклов производится по принципу «белого ящика», при проверке циклов основное внимание обращается на правильность конструкций циклов. Различают 4 типа циклов: простые, вложенные, объединенные, неструктурированные.

  1. Какие методики простых циклов вы знаете?

Прогон всего цикла;

Только один проход цикла;

Два прохода цикла;

m проходов цикла, где m
n - 1, n, n + 1 проходов цикла.

  1. Охарактеризуйте шаги тестирования вложенных циклов. Чем обусловлена их последовательность?

Выбирается самый внутренний цикл. Устанавливаются минимальные значения параметров всех остальных циклов;

Для внутреннего цикла проводятся тесты простого цикла. Добавляются тесты для исключенных значений и значений, выходящих за пределы рабочего диапазона;

Переходят в следующий по порядку объемлющий цикл. Выполняют его тестирование. При этом сохраняются минимальные значения параметров для всех внешних (объемлющих) циклов и типовые значения для всех вложенных циклов;

Работа продолжается до тех пор, пока не будут протестированы все циклы.


написать администратору сайта