- •Расчетно-пояснительная записка к выпускной квалификационной работе
- •Задание по подготовке выпускной квалификационной работы
- •Введение
- •Глава 1. Анализ проблемы и постановка задачи
- •Анализ предметной области
- •Содержательная постановка проблемы
- •Обзор и анализ существующих программных продуктов
- •Формальная постановка задачи
- •Структура решения задачи, декомпозиция задачи на подзадачи
- •Глава 2. Анализ моделей и методов решения
- •2.1. Ручное тестирование.
- •2.2. Автоматизированное тестирование
- •3.3. Алгоритм выполнения модульных тестов
- •Глава 4. Программное обеспечение
- •Язык программирования и инструментальные средства разработки
- •Описание структуры программного продукта
- •Глава 5. Оценка качества решения
- •5.1. Тестирование по
- •5.2. Вычислительный эксперимент
- •Заключение
- •Список используемых источников
- •Приложение а Техническое задание
- •Приложение б Руководство программиста
- •Приложение в Руководство пользователя
- •Приложение г Метрическая оценка качества решения
Приложение в Руководство пользователя
Назначение программы
Среда автоматизированных модульных тестов предназначена для разработчиков в целях упрощения проверки на корректность отдельных модулей исходного кода программы.
Условия, необходимые для выполнения программы
Для выполнения программного обеспечения на операционной системе должен быть установлен Node.js версии 16.15.0 и выше.
Установка:
Открыть командную строку.
В качестве рабочей директории указать папку разрабатываемого проекта, который оформлен в виде npm пакета.
Выполнить команду npm install u-tests .
Описание процедур
Написание модульного теста
Создание файла модульного теста
Создать файл с расширением .test.js или .test.ts, если будет осуществлена последующая компиляция TypeScript в JavaScript.
Подключение библиотеки
Необходимо подключить библиотеку u-tests. Добавим в начало файла модульного теста следующий код:
import {Assert, describe, it, before, after, beforeEach, afterEach} from 'u-tests'
Описание группы тестов
Для описания группы тестов используется функция describe, первым аргументом которой является название группы тестов, а вторым функция-описания. Данная функция-описание может содержать описание вложенных групп тестов, отдельных модульных тестов и описание работ группы тестов.
Описание работ группы тестов
Для описания работ группы тестов используются функции:
before – определяет работу, которая будет выполнена до запуска группы тестов.
after – определяет работу, которая будет выполнена после запуска группы тестов.
beforeEach – определяет работу, которая будет выполнена до запуска каждого теста группы тестов.
afterEach – определяет работу, которая будет выполнена после запуска каждого теста группы тестов.
Данные функции принимают на вход единственный аргумент – функция.
Описание модульного теста
Для описания модульного теста используется функция it, первым аргументом которой является название теста, а вторым функция-описание. Данная функция-описание может содержать функции-утверждения для модульного теста.
Описание утверждений для модульного теста
Функция-утверждение позволяет проверить результат работы модуля.
Набор утверждений включает в себя следующие функции:
Таблица В.1 – Описание утверждений
Название функции-утверждения |
Описание |
equal |
Данное утверждение является проверкой нестрогого равенства фактического и ожидаемого значения. |
notEqual |
Данное утверждение является проверкой нестрогого неравенства фактического и ожидаемого значения. |
strictEqual |
Данное утверждение является проверкой строгого равенства фактического и ожидаемого значения. |
Продолжение таблицы В.1
notStrictEqual |
Данное утверждение является проверкой строгого неравенства фактического и ожидаемого значения. |
deepEqual |
Данное утверждение является проверкой глубокого равенства фактического и ожидаемого значения. |
isAbove |
Данное утверждение является проверкой, что проверяемое значение строго больше заданного значения. |
isAtLeast |
Данное утверждение является проверкой, что проверяемое значение не меньше заданного значения. |
isBelow |
Данное утверждение является проверкой, что проверяемое значение строго меньше заданного значения. |
isAtMost |
Данное утверждение является проверкой, что проверяемое значение не больше заданного значения. |
isTrue |
Данное утверждение является проверкой, что проверяемое значение может быть приведено к истине. |
isNotTrue |
Данное утверждение является проверкой, что проверяемое значение не может быть приведено к истине. |
isFalse |
Данное утверждение является проверкой, что проверяемое значение может быть приведено к ложному значению. |
Продолжение таблицы В.1
isNotFalse |
Данное утверждение является проверкой, что проверяемое значение не может быть приведено к ложному значению. |
isNull |
Данное утверждение является проверкой, что проверяемое значение равно значению null. |
isNotNull |
Данное утверждение является проверкой, что проверяемое значение не равно значению null. |
isNaN |
Данное утверждение является проверкой, что проверяемое значение является специальным числом NaN. |
isNotNaN |
Данное утверждение является проверкой, что проверяемое значение не является специальным числом NaN. |
isUndefined |
Данное утверждение является проверкой, что проверяемое значение равно значению undefined. |
isDefined |
Данное утверждение является проверкой, что проверяемое значение не равно значению undefined. |
exists |
Данное утверждение является проверкой, что проверяемое значение не равно ни значению null, ни значению undefined. |
notExists |
Данное утверждение является проверкой, что проверяемое значение равно значению null или значению undefined. |
Выполнение модульных тестов с выводом результатов в консоль
Для запуска программы необходимо ввести в командную строку название программы (u-tests) и пути к файлам и папкам через запятую содержащие модульные тесты;
Рисунок В.1 – Запуск программы с выводом отчёта в консоль
Вариант отчета после выполнения модульных тестов:
Рисунок В.2 – Отчёт о выполнении модульных тестов в консоли
Выполнение модульных тестов с выводом результатов в HTML документ
Для запуска программы необходимо ввести в командную строку название программы (u-tests) и следующие аргументы через пробел:
Пути к файлам и папкам через запятую содержащие модульные тесты;
Ключ --html ;
Файл назначения документа отчёта. Если файл назначения не задан, то документ отчёта будет сохранён в файл report.html в рабочую директорию;
Рисунок В.3 – Запуск программы с выводом отчёта в HTML документ
Вариант отчета после выполнения модульных тестов:
Рисунок В.4 – Отчёт о выполнении модульных тестов в HTML документе
Выполнение модульных тестов с выводом результатов в JSON документ
Для запуска программы необходимо ввести в командную строку название программы (u-tests) и следующие аргументы через пробел:
Пути к файлам и папкам через запятую содержащие модульные тесты;
Ключ --json ;
Файл назначения документа отчёта. Если файл назначения не задан, то документ отчёта будет сохранён в файл report.json в рабочую директорию;
Рисунок В.5 – Запуск программы с выводом отчёта в файл JSON
Вариант отчета после выполнения модульных тестов:
Рисунок В.6 – Отчёт о выполнении модульных тестов в файл JSON
Выполнение модульных тестов без вывода результатов в консоль
Чтобы результат не выводился в консоль при запуске программы необходимо добавить аргумент --noConsole.
Рисунок В.7 – Запуск программы с выводом отчёта
в HTML документ без вывода в консоль
В тех случаях формирования отчёта, когда в аргументах ключ --noConsole был не задан, отчёт выводится в консоль по умолчанию.
Сообщения
Сообщений для пользователя не выводится.