Тема: Фреймворк модульного тестирования для функционально-потоковых параллельных программ
Закажите новую по вашим требованиям
Представленный материал является образцом учебного исследования, примером структуры и содержания учебного исследования по заявленной теме. Размещён исключительно в информационных и ознакомительных целях.
Workspay.ru оказывает информационные услуги по сбору, обработке и структурированию материалов в соответствии с требованиями заказчика.
Размещение материала не означает публикацию произведения впервые и не предполагает передачу исключительных авторских прав третьим лицам.
Материал не предназначен для дословной сдачи в образовательные организации и требует самостоятельной переработки с соблюдением законодательства Российской Федерации об авторском праве и принципов академической добросовестности.
Авторские права на исходные материалы принадлежат их законным правообладателям. В случае возникновения вопросов, связанных с размещённым материалом, просим направить обращение через форму обратной связи.
📋 Содержание
1 Постановка задачи 5
1.1 Особенности функционально-потокового параллельного
программирования 5
1.2 Подход к разработке модульных тестов 7
1.3 Интерпретация тестовых наборов 10
1.4 Утилита модульного тестирования с графическим интерфейсом 13
1.5 Выводы по главе 14
2 Проектирование. Особенности реализации 15
2.1 Алгоритм и реализация утилиты модульного тестирования 15
2.2 Интеграция модульных тестов в среду ФПП программирования 17
2.3 Выводы по главе 20
3 Тестирование и особенности использования инструментов модульного
тестирования 21
3.1 Сборка. Требования к инструментам 21
3.2 Установка. Требования к системе 22
3.3 Проверка корректности работы утилит 22
3.4 Выводы по главе 27
Заключение 28
Список сокращений 29
Список использованных источников 30
ПРИЛОЖЕНИЕ А Примеры описания тестов 33
ПРИЛОЖЕНИЕ Б Результаты апробации работы 36
📖 Введение
Целью работы является создание фреймворка модульного тестирования для языков функционально потоковой параллельной (ФПП) парадигмы. Функционально-потоковая парадигма имеет ряд особенностей, влияющих на процесс тестирования кода.
Исследований, связанных с реализацией инструментов модульного тестирования ФПП программ не проводилось, поэтому данная работа является актуальной.
Практическим результатом работы являются: предложенный подход к разработке тестов, а также созданный набор инструментов, позволяющий автоматизировать запуск тестов и сбор результатов тестирования. Произведена интеграция данных инструментов в разрабатываемую интегрированную среду разработки ФПП языков программирования.
Апробация работы. Результаты работы докладывались и обсуждались на международных конференциях:
• "Проспект Свободный";
• "Кибернетика, информатика, аналитика: модели, инструменты, методы".
Структура работы отражает решаемые задачи. Пояснительная записка состоит из введения, 3 глав, заключения, списка литературы из 19 наименований, 2 приложений, содержит 13 рисунков и 2 таблицы.
В первой главе описаны особенности функционально потоковой парадигмы влияющие на организацию системы модульного тестирования, а также инструментальные средства ФПП программирования с которыми интегрируется фреймворк модульного тестирования. Предложен подход к организации тестирования и структура программных средств, учитывающие специфику ФПП программирования. Разработана спецификация требований к инструментам модульного тестирования.
Вторая глава содержит результаты проектирования и реализации инструментальных средств модульного тестирования ФПП программ, описание особенностей использования созданных инструментов.
В рамках третьей главы разработаны примеры программ на которых выполнялось тестирование; созданы модульные тесты к существующим комплектам ФПП программ; выполнена проверка работоспособности инструментов модульного тестирования; описан процесс сборки фреймворка.
✅ Заключение
а) предложен подход к разработке тестов;
б) разработан фреймворк модульного тестирования в виде скрипта на языке Python;
в) создано оконный интерфейс к фреймворку в виде ^t-виджета на языке C++, выполнена его встраивание в интегрированную среду разработки функционально-потоковых языков программирования.
В результате доклада работы на конференциях заняты 1 и 3 места. Дипломы приведены в приложение.
В рамках дальнейших работ возможно:
а) создание системы оценки качества тестового покрытия [18]. Для этого необходимо выполнить доработку интерпретатора функционально-потоковых параллельных программ - ввести в него режим исполнения программ, помечающий вершины реверсивного информационного графа после их использования;
б) адаптация системы тестирования для языка Smile использующего, в отличии от Пифагор, строгую типизацию [19]. Этот язык ориентирован на компиляцию программ, поэтому фреймворк модульного тестирования для этого языка должен собирать тестовые наборы и формировать из них точку входа.





