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

2.3.2. Проверка программного кода

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

Например, при тестировании модуля анализа и вычислений выражений модуль, отвечающий за вычисления простых математический функций, можно заменить на модуль, содержащий стандартные методы области Math. Так мы будем точно знать, что все ошибки, выявленные при тестировании, не имеют отношения к нашей заглушке. Таким образом, заменив все модули, кроме тестируемого, заглушками, мы сможем утверждать, что все ошибки, обнаруженные при тестировании, будут относиться к "настоящему" (тестируемому) модулю.

Более того, заглушки дают нам дополнительное преимущество в тестировании. Мы можем написать заглушки, возвращающие пользователю дополнительную информацию во время тестирования. Например, нам необходимо узнать значение определенной переменной во время выполнения программы. Для этого мы можем написать заглушку, которая будет записывать значение этой переменной в лог-файл или на консоль.

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

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

Математические функции. Этот модуль мы будем исследовать как "черный ящик" и выяснять, действительно ли реализованные в нем математические функции работают корректно.

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

При тестировании будет использоваться следующая последовательность действий.

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

2.3.3. Проверка архитектуры

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

2.3.4. Проверка требований

После прохождения всех этапов тестирования необходимо провести проверку требований Системы в целом, то есть провести системное тестирование.

2.4. Приложение. Спецификация на программу "Калькулятор. Базовая версия"

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

  1. Общее описание

Часть общего описания – см. 2.1.

Калькулятор состоит из трех модулей – "Графический интерфейс", "Модуль, анализирующий и вычисляющий введенное выражение" (AnalaizerClass.dll) и "Модуль, реализующий математические функции" (CalcClass.dll). После того, как пользователь введет вычисляемое выражение одним из двух вышеописанных способов, управление передается анализирующему модулю, который форматирует выражение, выделяя числа и операторы, проверяет корректность скобочной структуры, а также выявляет неверные с точки зрения математики конструкции (например, 3+*+3), переводит выражение в обратную польскую запись, после чего вычисляет выражения, используя математические функции из модуля CalcClass.

  1. Описание интерфейса.

    1. Входные данные

      • Параметры вызова (формат командной строки)

calc.exe [expression]

expression – математическое выражение, удовлетворяющее требованию 3.2

  • Состояние информационного окружения .

В папке с программой также находятся файлы CalcClass.dll, AnalaizerClass.dll

    1. Выходные данные.

      • Коды возврата программы.

Число и 0 на новой строке – результат вычислений выражения.

Error: <сообщение об ошибке> и код ошибки на новой строке — сообщение об ошибке в случае несоответствия входного выражения требованиям 3.2

  • Состояние информационного окружения после завершения программы.

В папке с программой также находятся файлы CalcClass.dll, AnalaizerClass.dll

  • Сообщения об ошибках, выдаваемые программой (коды ошибок).

Error 01 at <i> — Неправильная скобочная структура, ошибка на <i> символе

Error 02 at <i> — Неизвестный оператор на <i> символе

Error 03 — Неверная синтаксическая конструкция входного выражения

Error 04 at <i> — Два подряд оператора на <i> символе

Error 05 — Незаконченное выражение

Error 06 — Слишком малое или слишком большое значение числа для int. Числа должны быть в пределах от -2147483648 до 2147483647

Error 07 — Слишком длинное выражение. Максмальная длина — 65536 символов.

Error 08 — Суммарное количество чисел и операторов превышает 30

Error 09 – Ошибка деления на 0