Провести интеграционное тестирование программы, осуществляющей вычисление системы функций (в соответствии с вариантом).
Введите вариант: 91823
- Все составляющие систему функции (как тригонометрические, так и логарифмические) должны быть выражены через базовые (тригонометрическая зависит от варианта; логарифмическая - натуральный логарифм).
- Структура приложения, тестируемого в рамках лабораторной работы, должна выглядеть следующим образом (пример приведён для базовой тригонометрической функции
$\sin(x)$ ):
- Обе "базовые" функции (в примере выше -
$\sin(x)$ и$\ln(x)$ ) должны быть реализованы при помощи разложения в ряд с задаваемой погрешностью. Использовать тригонометрические / логарифмические преобразования для упрощения функций ЗАПРЕЩЕНО. - Для КАЖДОГО модуля должны быть реализованы табличные заглушки. При этом, необходимо найти область допустимых значений функций, и, при необходимости, определить взаимозависимые точки в модулях.
- Разработанное приложение должно позволять выводить значения, выдаваемое любым модулем системы, в csv файл вида «X, Результаты модуля (X)», позволяющее произвольно менять шаг наращивания X. Разделитель в файле csv можно использовать произвольный.
- Разработать приложение, руководствуясь приведёнными выше правилами.
- С помощью JUNIT5 разработать тестовое покрытие системы функций, проведя анализ эквивалентности и учитывая особенности системы функций. Для анализа особенностей системы функций и составляющих ее частей можно использовать сайт https://www.wolframalpha.com/.
- Собрать приложение, состоящее из заглушек. Провести интеграцию приложения по 1 модулю, с обоснованием стратегии интеграции, проведением интеграционных тестов и контролем тестового покрытия системы функций.
- Текст задания, систему функций.
- UML-диаграмму классов разработанного приложения.
- Описание тестового покрытия с обоснованием его выбора.
- Графики, построенные csv-выгрузкам, полученным в процессе интеграции приложения.
- Выводы по работе.
- Цели и задачи интеграционного тестирования. Расположение фазы интеграционного тестирования в последовательности тестов; предшествующие и последующие виды тестирования ПО.
- Алгоритм интеграционного тестирования.
- Концепции и подходы, используемые при реализации интеграционного тестирования.
- Программные продукты, используемые для реализации интеграционного тестирования. Использование JUnit для интеграционных тестов.
- Автоматизация интеграционных тестов. ПО, используемое для автоматизации интеграционного тестирования.