Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая_Шарыкин_Тестирование.docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
740.06 Кб
Скачать
        1. Оценка цикломатической сложности

Приведенный граф позволяет оценить минимальное количество тестов, которые должны быть проведены. Оценку цикломатической сложности будем производить тремя указанными методами:

  1. V(G) = количество регионов = 4

  2. V(G) = количество дуг – количество узлов + 2 = 15 – 13 + 2 = 4

  3. V(G) = количество предикатных узлов +1 = 3 + 1 = 4

Таким образом, необходимо составить 4 теста, охватывающих независимые пути в графе.

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

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

Были выявлены следующие независимые пути:

  1. 1-12-13

  2. 1-2-3-12-13

  3. 1-2-3-4-5-6-8-10-11-3-12-13

  4. 1-2-3-4-5-6-7-9-10-11-3-12-13

В представленном списке не учитывался факт наличия цикла (отрезки путей 3-4…-…-11могут повторяться неоднократно)

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

Для тестирования каждого из независимых путей были созданы тестовые варианты исходных данных. Сами данные (ИД), ожидаемый от них результат (ОЖ. РЕЗ.) и результат, полученный фактически при выполнении программы (Ф. РЕЗ.), приведены в Таблица 5. Тестирование выполняется для справочника «Субъекты».

Таблица 5. Тестовые варианты для метода базового пути

ИД

ОЖ. РЕЗ.

1

Файл Субъекты.txt отсутствует

Выброшено исключение FileNotFoundException, которое затем перехвачено в методе Program.Main.

2

Файл Субъекты.txt не содержит данных

Свойство DictionaryParser.Dictionary инициализировано пустым словарем.

3

Файл Субъекты.txt содержит одну или несколько корректных строк:

Студент (Студента, Студенту, Студентом, Студенте)

Студенты (Студентов, Студентам, Студентами, Студентах)

Свойство DictionaryParser.Dictionary содержит словарь:

СТУДЕНТ ->

[0]: "СТУДЕНТ"

[1]: "СТУДЕНТА"

[2]: "СТУДЕНТУ"

[3]: "СТУДЕНТОМ"

[4]: "СТУДЕНТЕ"

СТУДЕНТЫ ->

[0]: "СТУДЕНТЫ"

[1]: "СТУДЕНТОВ"

[2]: "СТУДЕНТАМ"

[3]: "СТУДЕНТАМИ"

[4]: "СТУДЕНТАХ"

4

Файл Субъекты.txt содержит одну или несколько некорректных строк:

Студент Студента, Студенту, Студентом, Студенте)

Примечание: отсутствует символ ‘(‘

Выброшено исключение DictionaryException, которое затем перехвачено в методе Program.Main.

Тестирование ветвей и операторов отношений

В рассматриваемом модуле есть три условных оператора, условия для которых записаны операторами 1, 3, 6. Метод ветвей и операторов отношений будем выполнять только в последнем случае, так как первый реализован средствами .NET Framework, а второй задает условие цикла и будет протестирован позднее:

if (openBracket == -1)

     throw new DictionaryException(_dictionaryType,

               DictionaryExceptionReason.НевозможноПроанализироватьВариантыФорм);

В этом случае, очевидно, достаточно рассмотреть два случая:

  1. Переменная openBracket  имеет значение -1, то есть строка в файле имеет неверный формат (отсутствует символ ‘(‘ как разделитель начальной формы слова и используемых форм). Тогда будет сгенерировано исключение DictionaryException, которое затем будет обработано в главном цикле программы.

  2. Переменная openBracket имеет значение, отличное от -1. Тогда программа будет успешно продолжена.