Тестування інтернету речей (IoT - Internet of Things)
Last updated
Last updated
Інтернет речей(Internet of Things, IoT) - це безліч фізичних об'єктів, підключених до інтернету та даних, що обмінюються. Концепція IoT може суттєво покращити багато сфер нашого життя та допомогти нам у створенні більш зручного, розумного та безпечного світу. Приклади Інтернету речей варіюються від речей, що носяться, таких як розумний годинник, до розумного будинку, який вміє, наприклад, контролювати і автоматично змінювати ступінь освітлення та опалення. Також яскравим прикладом є так звана концепція розумного підприємства (Smart Factory), яке контролює промислове обладнання та шукає проблемні місця, а потім перебудовується так, щоб не допустити поломок. Інтернет речей займає важливе місце у процесі цифрової трансформації в компаніях. Прогнозується,
Архітектура IoT
Кінцеві пристрої : це об'єкти, які фактично утворюють "речі" (Things) в Інтернеті речей. Вони відіграють роль інтерфейсу між реальним та цифровим світами та приймають різні розміри, форми та рівні технологічної складності залежно від завдання, яке вони виконують у рамках конкретного розгортання IoT. Будь то мікрофони розміром з шпилькову головку або значний розмір машини, практично будь-який матеріальний об'єкт можна перетворити на підключений пристрій шляхом додавання необхідних елементів (датчиків або приводів разом з відповідним програмним забезпеченням);
Програмне забезпечення : це те, завдяки чому підключені пристрої можна назвати «розумними». Програмне забезпечення відповідає за зв'язок із хмарою, збір даних, інтеграцію пристроїв та за аналіз даних у реальному часі. Також воно надає можливості для візуалізації даних та взаємодії із системою IoT;
Комунікації : рівень комунікації включає як рішення для фізичного підключення (стільниковий і супутниковий зв'язок, LAN), так і спеціальні протоколи, що використовуються в різних середовищах IoT (ZigBee, Thread, Z-Wave, MQTT, LwM2M). Вибір відповідного комунікаційного рішення - одне з життєво важливих елементів під час побудови кожної IoT-системы. Вибрана технологія визначатиме не тільки способи надсилання та отримання даних з хмари, але способи зв'язку зі сторонніми пристроями;
Платформа : пристрої здатні «відчувати», що відбувається навколо і повідомляти про це користувачеві через певний канал зв'язку. IoT-платформа - це місце, де всі ці дані збираються, аналізуються та передаються користувачеві у зручній формі. Платформи можуть бути встановлені локально або у хмарі. Вибір платформи залежить від вимог конкретного проекту IoT та багатьох факторів: архітектура та стек технологій, надійність, параметри налаштування, протоколи, апаратна незалежність, безпека, ефективність, вартість.
Види тестування IoT
На прикладі медичного пристрою:
Usability :
Нам потрібно переконатися у зручності використання кожного із пристроїв, що використовуються тут;
Пристрій, що використовується, відстеження медичного обслуговування повинен бути достатньо портативним, щоб його можна було переміщати в різні сегменти медичного закладу;
Обладнання має бути досить розумним, щоб розсилати не тільки повідомлення, а й повідомлення про помилки, попередження тощо;
Система повинна мати можливість реєструвати всі події, щоб забезпечити ясність кінцевих користувачів. Якщо це неможливо, система також повинна надіслати їх до бази даних для зберігання;
Повідомлення повинні відображатися, а керування відображенням має виконуватися належним чином на пристроях;
Необхідно ретельно протестувати зручність використання з погляду відображення даних, обробки даних, відправки робочих завдань з пристроїв.
Security :
IoT орієнтований дані, коли всі підключені пристрої/системи працюють з урахуванням доступних даних;
Коли справа доходить до потоку даних між пристроями, завжди є шанс, що дані можуть бути доступні або прочитані під час передачі;
З точки зору тестування нам потрібно перевірити, чи захищені/зашифровані дані при передачі з одного пристрою на інший;
Скрізь, де є інтерфейс користувача, ми повинні переконатися, що він захищений паролем.
Connectivity :
Оскільки це рішення для охорони здоров'я, підключення грає життєво важливу роль;
Система має бути доступна весь час і повинна мати безперешкодний зв'язок із заінтересованими сторонами;
Щодо підключення, дуже важливо перевірити дві речі:
Підключення, передача даних, отримання робочих завдань із пристроїв повинні бути безперебійними, коли з'єднання встановлено та працює;
Іншою умовою є сценарій відсутності з'єднання. Неважливо, наскільки надійними є система та мережа, є ймовірність, що система відключиться. Ми, як тестувальники, маємо протестувати і офлайн-умови. Коли система недоступна в мережі, має бути попередження, яке може підказати лікарям, щоб вони могли почати відстежувати стан здоров'я вручну, незалежно від системи, доки вона не буде запущена. З іншого боку, у системі має бути механізм, який міг би зберігати у ній усі дані під час автономної роботи. Як тільки система підключається до мережі, всі ці дані мають бути розповсюджені. Втрати даних не повинно бути за жодних умов.
Performance :
Коли ми говоримо про систему для охорони здоров'я, нам потрібно переконатися, що система досить масштабована для всієї лікарні;
Коли проводиться тестування, воно проводиться для 2-10 пацієнтів одночасно і дані поширюються на 10-20 пристроїв;
Коли вся лікарня підключена і до системи підключено 180-200 пацієнтів, дані, що розповсюджуються, набагато більше, ніж тестовані дані;
Як тестувальники, ми повинні переконатися, що система працює так само, навіть якщо додані дані множаться;
Ми також повинні протестувати утиліту моніторингу, щоб відображати використання системи, енергоспоживання, температуру тощо.
Compatibility :
Дивлячись на складну архітектуру системи IoT, тестування на сумісність є обов'язковим.
Для тестування сумісності з IoT необхідно тестування таких елементів як кілька версій операційної системи, типи браузерів і відповідні версії, покоління пристроїв, режими зв'язку.
Pilot Testing :
Щодо IoT, пілотне тестування є обов'язковим.
Тільки тестування у лабораторії гарантує, що продукт/система працює нормально. Але це може мати неприємні наслідки при впливі умов/кроків/сценаріїв у реальному часі;
Під час пілотного тестування система піддається впливу обмеженої кількості користувачів у реальних умовах. Вони використовують додаток та залишають відгуки про систему;
Ці коментарі стануть у нагоді, щоб зробити додаток достатньо надійним для виробничого розгортання.
Regulatory Testing :
Ця система охорони здоров'я має пройти через кілька контрольних точок регулювання/відповідності;
Подумайте про сценарій, де продукт проходить всі етапи тестування, але не проходить остаточний контрольний список відповідності;
Найкраще отримати нормативні вимоги на початку циклу розробки. Те саме має бути включено до контрольного списку тестування;
Роблячи це, ми також запевняємо, що продукт сертифікований за контрольним списком регулюючих органів.
Upgrade testing :
Інтернет речей є комбінацією декількох протоколів, пристроїв, операційних систем, мікропрограм, обладнання, мережевих рівнів і т. д.;
Коли виконується оновлення, будь то для системи або для будь-якого із задіяних елементів, як зазначено вище, має бути проведене ретельне регресійне тестування/має бути прийнята стратегія, щоб подолати проблеми, пов'язані з оновленням.
Джерела:
Дод. матеріал:
IoT там, де ви не чекали. Розробка та тестування , ,