Тип работы:
Предмет:
Язык работы:


РАЗРАБОТКА МЕТОДОЛОГИИ ТЕСТИРОВАНИЯ УСТРОЙСТВ ИНТЕРНЕТА ВЕЩЕЙ С ПРИМЕНЕНИЕМ АВТОМАТИЗИРОВАННОЙ ПЛАТФОРМЫ

Работа №99836

Тип работы

Дипломные работы, ВКР

Предмет

информационные системы

Объем работы59
Год сдачи2021
Стоимость4360 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
150
Не подходит работа?

Узнай цену на написание


РЕФЕРАТ 2
СПИСОК СОКРАЩЕНИЙ 6
ВВЕДЕНИЕ 7
1 ОБЗОР ТЕХНОЛОГИЙ СВЯЗИ ИНТЕРНЕТА ВЕЩЕЙ 10
1.1 Сети LPWAN 10
1.1.1 Стандарт NB-IoT 11
1.1.2 Стандарт LoRaWAN 13
1.2 Другие стандарты связи 19
1.3 Особенности протокола MQTT 21
2 ПОДХОДЫ К ТЕСТИРОВАНИЮ УСТРОЙСТВ ИНТЕРНЕТА ВЕЩЕЙ .. 24
2.1 Подходы к тестированию 24
2.2 Процесс тестирования приборов на предприятии НПО «Карат» 25
3 МЕТОДОЛОГИЯ ТЕСТИРОВАНИЯ ВСТРОЕННОГО
ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ 27
3.1 Этапы и принципы тестирования 27
3.1 YAML-файлы 27
3.2 Платформа автоматизированного тестирования 29
4 ПРОЕКТИРОВАНИЕ ЯДРА ТЕСТИРОВАНИЯ 31
4.1 Требования к ядру тестирования 31
4.2 Выбор технологий 36
4.2.1 .Net 5 37
4.2.2 Entity Framework 37
4.2.3 YamlDotNet 38
4.2.4 MQTTnet 38
4.2.5 StackExchange.Redis 38
4.2.6 NLog 39
5 РАЗРАБОТКА ЯДРА ТЕСТИРОВАНИЯ 40
5.1 Формат сценария 40
5.2 Подсистема управления испытаниями 42
5.3 Подсистема анализа сценариев тестирования 42
5.4 Подсистема тестирования 43
5.5 Подсистема записи результатов в БД 44
5.6 Журналирование событий 45
5.7 Запуск ядра тестирования в Воскег-контейнере 45
6 ПРОВЕДЕНИЕ ИСПЫТАНИЙ С ПОМОЩЬЮ ЯДРА ТЕСТИРОВАНИЯ 47
ЗАКЛЮЧЕНИЕ 49
БИБЛИОГРАФИЧЕСКИЙ СПИСОК 51
ПРИЛОЖЕНИЕ А 56
ПРИЛОЖЕНИЕ Б 57
ПРИЛОЖЕНИЕ В

Актуальность темы исследования. Тестирование устройств Интернета вещей является важной задачей еще на этапе разработки. Тестирование позволяет выявить соответствие между реальным и ожидаемым поведением программы или устройства, провести валидацию с целью выпустить на рынок качественный продукт.
Чем раньше происходит выявление ошибок в программном обеспечении, тем ниже расходы на их исправление. Особенно это касается предприятий, занимающихся массовыми производством электронных устройств и при-боров, например, «умных» счетчиков, измеряющих потребление энергоресурсов в квартирах, домах, промышленных помещениях.
На данный момент на рынке нет подходящего инструмента, позволяющего проводить тестирование встроенного программного обеспечения автоматически. Эмуляция микроконтроллера для исполнения программ не является эффективным решением, потому что есть непредсказуемое влияние погрешностей эмуляции на результат работы программы [1]. Поэтому, чаще всего, тестирование таких устройств проводится вручную.
Анализ актуальности обусловил выбор темы исследования: разработка методологии тестирования устройств Интернета вещей с применением автоматизированной платформы.
Гипотеза исследования. Предполагается, что проведение тестирования устройств Интернета вещей по разработанной методологии в автоматическом режиме позволит выявлять больше ошибок и ускорит тестирование новых версий встроенного программного обеспечения.
Целью исследования является разработка методологии тестирования «умных» устройств, которую можно будет внедрить в автоматизированную платформу тестирования Интернета вещей.
Для достижения поставленной цели необходимо решить следующие задачи:
- рассмотреть коммуникационные технологии, применяемые в Интернете вещей;
- исследовать подходы к тестированию 1оТ-устройств;
- сделать обоснованный выбор методов для тестирования встроенного программного обеспечения устройств Интернета вещей;
- выполнить постановку задачи и выбрать технологии для реализации системы тестирования;
- разработать ядро тестирования;
- провести испытание разработанной системы для тестирования встроенного ПО приборов учета энергоресурсов;
- оценить дальнейший путь развития системы.
Объектом исследования являются технологии тестирования устройств Интернета вещей.
Предметом исследования является методология проведения испытаний для универсальной автоматизированной платформы тестирования устройств Интернета вещей
Методы исследования включают в себя:
1) изучение источников информации об актуальных технологиях Интернета вещей;
2) анализ, систематизация и обобщение полученных сведений о разных подходах к тестированию;
3) апробация и анализ эффективности работы ядра тестирования в реальных условиях.
Теоретической основой исследования стали:
- отечественные и зарубежные исследования по автоматизации тестирования аппаратно-программных устройств;
- подходы к тестированию, применяемые на предприятии НПО «Карат»;
- современные концепции и технологии разработки веб-приложений.
Теоретическая и практическая значимость работы заключается в полученной методологии тестирования устройств Интернета вещей, а также реализованной системе тестирования, позволяющей ускорить процесс и повысить качество разработки встроенного программного обеспечения.
База исследования:
Данное исследование базируется на опыте использования и тестирования встроенного программного обеспечения приборов учета энергоресурсов компании НПО «Карат».
На защиту выносятся следующие положения:
1. Методы и технологии для проведения тестовых испытаний. Рассматриваются разные подходы к тестированию IoT-устройств и определяются наиболее эффективные.
2. Разработанное ядро системы тестирования. Описывается структура созданной системы, а также приводится сравнение эффективности автоматизированного и ручного тестирования.
3. Оценка развития системы. Рассматриваются варианты совершенствования ядра тестирования с целью приблизиться к универсальному решению.
Апробация результатов исследования и публикации. Основные результаты исследования были отражены в публикации:
Папуловская Н.В., Изотов И.Н., Блиничкин Д.Ю., Катаев А.Ю. Разработка ядра платформы автоматизированного тестирования устройств Интернета вещей // International Journal of Open Information Technologies. 2021. Т. 9, № 6. С. 38-45.
Структура и объём работы. Выпускная квалификационная работа состоит из введения, 6 глав и заключения, изложенных на 50 страницах, а также списка литературы и приложений. В работе имеется 24 рисунка. Список литературы содержит 36 наименований.


Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


Тестирование является важным этапом при разработке программного обеспечения, особенно при создании приборов и электронных модулей Интернета вещей. Очень важно на ранних этапах разработки выявить все критические места системы, поскольку на более поздних этапах на исправление этих ошибок уходит, как правило, больше ресурсов.
Данная работа проводилась для создания методологии тестирования «умных» устройств, которую можно применить для тестирования «умных» устройств, а впоследствии внедрить в автоматизированную платформу тестирования устройств Интернета вещей.
Для этого были рассмотрены современные технологии, применяемые в Интернете вещей. Рассмотрены сети LPWAN - NB-IoT и LoRaWAN. На данный момент для работы с NB-IoT сетью можно использовать оператора МТС, который также предлагает свою платформу «IoT.Платформа». Сеть LoRaWAN можно развернуть самостоятельно, например, используя открытое решение ChirpStack Network Server.
Классические стандарты связи удобно применять для разворачивания локальных решений, например, для создания «умных домов». Приборы, работающие на данных технологиях, можно тестировать аналогично сетям LPWAN.
Для взаимодействия с устройствами активно применяется протокол MQTT благодаря его «легковесности»: низкое потребление трафика, отсутствие задержек и удобная система подписок на топики.
По итогам проведенного обзора была разработана методология тестирования устройств Интернета вещей. Ключевыми особенностями являются:
• использование протокола MQTT в качестве основной коммуникационной платформы;
• задание сценариев в YAML-формате;
• модульная архитектура системы, позволяющая расширить возможности системы.
Был разработан сервис - ядро тестирования, - в котором реализована описанная методология. Для этого были выработаны технические требования к ядру тестирования и его подсистемам, а также выбраны технологии для реализации. Платформа .Net является хорошим вариантом для создания ядра тестирования и платформы в целом, так как обладает большим набором библиотек. Например, Entity Framework упрощает взаимодействие с базой данных.
Разработка ядра тестирования началась с определения формата сценария. Каждый тест обязательно содержит название и список команд. С помощью модулей функционал ядра можно расширить. Реализованные подсистемы отвечают требованиям технического задания. События, происходящие в ядре тестирования выводятся на консоль и сохраняются в лог-файл. Исходный код ядра тестирования доступен на странице проекта в Gitlab [35].
Для проверки гипотезы проведено исследование. Для этого было выполнено ручное и автоматизированное испытание модуля Карат-941Е'^ установленного в электросчетчик Милур 307. Процесс ручного тестирования занял 3 часа 13 минут рабочего времени тестировщика. Автоматизированное тестирование было выполнено за 27 минуты, а затраты на составления сценариев составили около 30 минут.
Таким образом, ядро тестирования позволяет уменьшить временные затраты на испытания новых версий встроенного ПО, а также увеличить количество тестов для исследования поведения устройства при разной конфигурации.
Работа над ядром тестирования будет продолжена. Планируется расширять список поддерживаемых IoT-платформ и протоколов коммуникационного обмена данными. На данный момент реализован модуль расширения функционала ядра для поддержки работы с устройствами НПО «Карат».



1. Козлов А. Тестирование прошивок микроконтроллеров AVR [Электронный ресурс] // Платформа Medium. 2020. Режим доступа: https://medium.com/@anton_oxide/testirovanie-proshivok-mikrokontrollerov-avr- f079045419c, свободный (дата обращения: 28.03.2021).
2. Бородин В.А. Интернет вещей - следующий этап цифровой революции // Образовательные ресурсы и технологии. 2014. Т. 54, № 2 (5). С. 178-181.
3. Никифоров О.Ю. Базовые технологии интернета вещей //
Международный научный журнал «Символ науки». 2015. № 9. С. 105-107.
4. Семенченко П.И. Стандартизация взаимодействия устройств Интернета вещей // Постулат. 2017. № 11. С. 67-72.
5. Фаузиев И. NB-IoT: как он работает? Часть 1 [Электронный ресурс] // Публикация на habr.ruкомпании МТС. 2018. Режим доступа: https://habr.com/ru/company/ru_mts/blog/430496/, свободный (дата обращения: 26.01.2021).
6. Стандарт NB-IoT Low-Power and Wide-Area, LPWAN
(Энергоэффективная сеть дальнего радиуса действия) [Электронный ресурс] // Публикация российского интернет-портала и аналитического агентства TAdviser. 2018. Режим доступа: http://www.tadviser.ru/index.php/
Статья:Стандарт_NB-IoT_Low-Power_and_Wide-Area%2C_LPWAN_ %28Энергоэффективная_сеть_дальнего_радиуса_действия%29, свободный (дата обращения: 26.01.2021).
7. Анисимов А. NB-IoT, Narrow Band Internet of Things. Общая информация, особенности технологии [Электронный ресурс] // Публикация на habr.ru. 2019. Режим доступа: https://habr.com/ru/post/435646/, свободный (дата обращения: 26.01.2021).
8. IoT-сеть от МТС [Электронный ресурс] // Официальный сайт
оператора сотовой связи МТС. Режим доступа: https://e-burg.mts.ru/business/mobilnaya-svyaz/korporativnie-tarifi-i-opcii/iot-set-dlya - interneta-veshhej, свободный (дата обращения: 26.01.2021).
9. IoT/M2M-peiпения для бизнеса от Мегафона [Электронный ресурс] // Официальный сайт оператора сотовой связи Мегафон для IoT. Режим доступа: https://iot.megafon.ru/, свободный (дата обращения: 26.01.2021).
10. What is the LoRaWAN® Specification? [Электронный ресурс] // LoRa Alliance. 2019. Режим доступа: https://lora-alliance.org/about-lorawan, свободный (дата обращения: 26.01.2021).
11. Что такое LoRaWan [Электронный ресурс] // Публикация на
habr.ru компании НАГ. 2017. Режим доступа:
https://habr.com/ru/company/nag/blog/371067/, свободный (дата обращения: 26.01.2021).
12. ChirpStack open-source LoRaWAN® Network Server [Электронный ресурс] // Официальный сайт сервера сети LoRaWAN с открытым исходным кодом ChirpStack. Режим доступа: https://www.chirpstack.io/, свободный (дата обращения: 24.01.2021).
13. Как выбрать стандарт связи для сети IoT [Электронный ресурс] // Публикация на habr.ruкомпании Command Spot. 2016. Режим доступа: https://habr.com/ru/company/commandspot/blog/390825/, свободный (дата обращения: 26.01.2021).
14. Suthers E. Wi-Fi Alliance® introduces low power, long range Wi-Fi HaLowTM[Электронный ресурс] // Публикация Wi-Fi Alliance о новой технологии Wi-Fi HaLow. 2016. Режим доступа: https://www.wi-fi.org/news- events/newsroom/wi-fi-alliance-introduces-low-power-long-range-wi-fi-halow, свободный (дата обращения: 26.01.2021).
15. Свердлюк Б. Zigbee 101: руководство для начинающих [Электронный ресурс] // Публикация на habr.ru. 2020. Режим доступа: https://habr.com/ru/post/535658/, свободный (дата обращения: 29.05.2021).
16. Amazon, Apple, Google, Zigbee Alliance and board members form
working group to develop open standard for smart home devices [Электронный ресурс] // Пресс-релиз проекта Connected Home over IP. 2019. Режим доступа: https://www.apple.com/newsroom/2019/12/amazon-apple-google-and-the-zigbee- alliance-to-develop-connectivity-standard/, свободный (дата обращения:
29.05.2021).
17. Проект Matter [Электронный ресурс] // Официальный сайт проекта стандартизации Интернета вещей Connected Home over IP. 2021. Режим доступа: https://buildwithmatter.com/, свободный (дата обращения: 29.05.2021).
18. MQTT и Modbus: сравнение протоколов, используемых в шлюзах для IoT [Электронный ресурс] // Публикация компании Intel на habr.com. 2016. Режим доступа: https://habr.com/ru/company/intel/blog/304228/, свободный (дата обращения: 26.01.2021).
19. Что такое MQTT и для чего он нужен в IIoT? Описание протокола MQTT [Электронный ресурс] // Статья компании IPC2U. 2016. Режим доступа: https://ipc2u.ru/articles/prostye-resheniya/chto-takoe-mqtt/, свободный (дата обращения: 26.01.2021).
20. Федеральный закон от 27 декабря 2018 г. N 522-ФЗ «О внесении изменений в отдельные законодательные акты Российской Федерации в связи с развитием систем учета электрической энергии (мощности) в Российской Федерации» [Электронный ресурс].
21. Плотников О. 522-фз или как умнеют счётчики электричества. Часть 1 [Электронный ресурс] // Публикация на habr.ru. 2021. Режим доступа: https://habr.com/ru/post/540674/, свободный (дата обращения: 28.05.2021).
22. Долгушев Р.А., Киричек Р.В., Кучерявый А.Е. Обзор возможных видов и методов тестрования интернет вещей // Информационные технологии и телекоммуникации. 2016. Т. 4, № 2. С. 1-11.
23. ThingPark Interop Engine [Электронный ресурс] // Сайт ThingPark Community - инструмент тестирования и сертификации устройств LoRaWAN. Режим доступа: https://community.thingpark.org/index.php/thingpark-interop- engine/, свободный (дата обращения: 30.05.2021).
24. Иванов Р.О., Павлов Д., Юлаева Э. Автоматизированное тестирование прошивок в iRZ: от идеи до реализации // Беспроводные технологии. 2019. № 4. С. 52-54.
25. ReadyAPI [Электронный ресурс] // Платформа для проведения функционального тестирования с поддержкой протокола MQTT. Режим доступа: https://smartbear.com/product/ready-api/overview/, свободный (дата обращения: 30.03.2021).
26. YAML — Краткое руководство [Электронный ресурс] // Ресурс
CoderLessons, содержащий уроки по программированию, DevOps и другим IT- технологиям. 2018. Режим доступа:
https://coderlessons.com/tutorials/raznoe/vyuchi-yaml/yaml-kratkoe-rukovodstvo, свободный (дата обращения: 26.01.2021).
27. Документация .Net [Электронный ресурс] // Официальный сайт
документации для платформы .Net. Режим доступа:
https://docs.microsoft.com/ru-ru/dotnet/fundamentals/, свободный (дата
обращения: 22.05.2021).
28. Документация Entity Framework [Электронный ресурс] // Официальный сайт документации для Entity Framework. Режим доступа: https://docs.microsoft.com/ru-ru/ef/core/, свободный (дата обращения: 22.05.2021).
29. Документация PostgreSQL [Электронный ресурс] // Официальный сайт PostgreSQL. Режим доступа: https://www.postgresql.org/docs/, свободный (дата обращения: 22.05.2021).
30. Репозиторий MQTTnet [Электронный ресурс] // Репозиторий MQTTnet на Github. Режим доступа: https://github.com/chkr1011/MQTTnet(дата обращения: 22.05.2021).
31. Документация YamlDotNet [Электронный ресурс] // Репозиторий
YamlDotNet на Github. Режим доступа:
https://github.com/aaubry/YamlDotNet/wiki, свободный (дата обращения: 22.05.2021).
32. Документация StackExchange.Redis [Электронный ресурс] //
Репозиторий StackExchange.Redis на Github. Режим доступа: https://stackexchange.github.io/StackExchange.Redis/, свободный (дата
обращения: 22.05.2021).
33. Документация NLog [Электронный ресурс] // Официальный сайт проекта NLog. Режим доступа: https://nlog-project.org/, свободный (дата обращения: 22.05.2021).
34. Документация Redis [Электронный ресурс] // Официальный сайт NoSQL СУБД Redis. Режим доступа: https://redis.io/documentation, свободный (дата обращения: 23.05.2021).
35. loTesting [Электронный ресурс] // Ссылка на Gitlab-страницу автоматизированной платформы тестирования устройств Интернета вещей. 2021. Режим доступа: https://gitlab.com/karatteam/iotesting, свободный (дата обращения: 01.06.2021).
36. Спецификация протокола Modbus [Электронный ресурс] //
Организация Modbus. 2012. Режим доступа:
https://modbus.org/docs/Modbus_Application_Protocol_V1_1b3.pdf, свободный (дата обращения: 21.03.2021).


Работу высылаем на протяжении 30 минут после оплаты.



Подобные работы


©2024 Cервис помощи студентам в выполнении работ