EMBEDDED QA: НАВЧІТЬСЯ ТЕСТУВАТИ ПРИСТРОЇ, ПРОШИВКИ ТА ПРОТОКОЛИ
Розберіть QA-флоу для пристроїв: від налаштування тестового середовища та аналізу логів — до автоматизації перевірок на Python і C/C++.
Богдан Горбанич
Senior embedded QA engineer у
SQUAD

ВИМОГИ ДЛЯ СТАРТУ
Курс підійде тим, хто вже має базу в QA Automation або Embedded-розробці, впевнено працює з Python і розуміє основи електроніки.
Для навчання вам знадобиться лише ноутбук і доступний мікроконтролер ESP32. Решту компонентів (датчики, модулі тощо) ви підбиратимете разом із викладачем у процесі курсу — під конкретні завдання та обрану прошивку.
ПРО КУРС:
В embedded QA ручні перевірки швидко перестають працювати: баги складно відтворити, flaky-сценарії губляться, а тестування hardware не масштабується без автоматизації.
На курсі ви побудуєте embedded QA workflow: від UART-комунікації, логів та debugging — до HIL-стендів, pytest-фреймворків, OTA/reliability testing та CI/CD для hardware.
-
20 онлайн-занять
-
Практика з UART, HIL, pytest, CI/CD та IoT
-
Фінальний проєкт: automated testing для embedded-пристрою
- Зареєструватися
лектор
Богдан Горбанич
Senior Embedded QA Engineer у SQUAD
-
Понад 7 років працює в QA Engineering: тестував software та embedded-рішення для hardware-продуктів
-
Senior Embedded QA Engineer у SQUAD і займається тестуванням embedded-систем
-
Має практичний досвід з Python, Test Automation та Firmware Automation Training
-
Спеціалізується на embedded QA, test automation і тестуванні hardware-продуктів: від перевірки прошивок і логів — до автоматизації сценаріїв для фізичних пристроїв.
Для кого:
Програма курсу
-
01 заняття28.07.2026 19:00
ВСТУП ДО EMBEDDED QA ТА РУЧНЕ ФУНКЦІОНАЛЬНЕ ТЕСТУВАННЯ
- Розберете, чим Embedded QA відрізняється від Web/Mobile QA
- Зрозумієте роль QA в lifecycle hardware-продукту
- Навчитеся складати тест-кейси для embedded-пристроїв
- Опануєте структуру тест-плану: happy path, негативні сценарії, граничні умови
- Навчитеся документувати дефекти так, щоб розробник зміг їх відтворити
-
02 заняття30.07.2026 19:00
RASPBERRY PI ЯК ТЕСТОВА ПЛАТФОРМА
- Розберете, навіщо Raspberry Pi використовують в Embedded QA
- Навчитеся налаштовувати Raspberry Pi з нуля без монітора
- Ознайомитеся з можливостями GPIO, I2C, SPI та UART
- Розберете ключові бібліотеки для роботи з Raspberry Pi: gpiozero, RPi.GPIO, pyserial
- Навчитеся запускати pytest безпосередньо на Raspberry Pi
- Дізнаєтесь, як використовувати Raspberry Pi як HIL-контролер
- Зрозумієте, коли краще використовувати Raspberry Pi, а коли — звичайний ПК
-
03 заняття04.08.2026 19:00
АРХІТЕКТУРА МІКРОКОНТРОЛЕРА ТА НАЛАШТУВАННЯ TOOLCHAIN
- Розберете, що таке мікроконтролер і чим MCU відрізняється від CPU
- Зрозумієте, чому embedded-пристрої складніше тестувати, ніж веб
- Ознайомитеся з архітектурою ESP32: ядрами, Flash, SRAM та NVS
- Розберете, як архітектура мікроконтролера впливає на поведінку прошивки
- Опануєте базове налаштування ESP-IDF або PlatformIO
- Навчитеся прошивати пристрій через esptool.py
- Навчитесь отримувати стартові логи пристрою через UART
-
04 заняття06.08.2026 19:00
ІНСТРУМЕНТАРІЙ QA-ІНЖЕНЕРА: СХЕМИ ТА ЛАБОРАТОРНЕ ОБЛАДНАННЯ
- Дізнаєтеся, навіщо QA-інженеру читати електронні схеми
- Навчитеся знаходити тест-поінти й місця підключення аналізатора
- Ознайомитеся з EasyEDA, KiCad та Altium Designer
- Розберете базові умовні позначення, лінії з’єднань і компоненти на схемах
- Зрозумієте, коли потрібен осцилограф, а коли достатньо логічного аналізатора
- Навчитеся виконувати базові перевірки стенду мультиметром
- Розберете, навіщо потрібен лабораторний блок живлення під час тестування
-
05 заняття11.08.2026 19:00
АНАЛІЗ КОМУНІКАЦІЙНИХ ПРОТОКОЛІВ I2C, SPI, UART ТА ОСНОВИ HARDWARE DEBUGGING
- Розберете, навіщо QA-інженеру аналізувати трафік на шині
- Ознайомитеся зі структурою I2C-кадру й типовими помилками протоколу
- Розберете SPI: режими CPOL/CPHA, роль CS-лінії та відмінності від I2C
- Опануєте базову структуру UART: стартові й стопові біти, baudrate, типові помилки
- Навчитеся підключати логічний аналізатор і захоплювати трафік
- Навчитеся декодувати пакети й знаходити помилки в комунікації між чіпами
- Зрозумієте, що таке JTAG/SWD і коли QA звертається до hardware debugging
-
06 заняття13.08.2026 19:00
ВЗАЄМОДІЯ З ПРИСТРОЄМ ЧЕРЕЗ UART: PYTHON І PYSERIAL
- Розберете, як працює serial port на рівні операційної системи
- Навчитеся відкривати UART-з’єднання через Python і pyserial
- Опануєте параметри з’єднання: baudrate, parity, stopbits
- Навчитеся програмно знаходити доступні порти через serial.tools.list_ports
- Розберете, як читати «сирий» UART-потік з пристрою
- Навчитеся парсити змішаний вивід прошивки: debug-логи, JSON і шум після reboot
- Створите клас DeviceDriver, який приховує деталі з’єднання від тестів
-
07 заняття18.08.2026 19:00
НАДІЙНІСТЬ ДРАЙВЕРА І ВАРІАЦІЇ ТРАНСПОРТУ
- Навчитесь обробляти типові помилки: timeout, обрізану відповідь, невалідний JSON, зникнення порту
- Опануєте retry-патерн із backoff для нестабільних embedded-сценаріїв
- Розберете, як логувати спроби для дебагу flaky-тестів
- Навчитеся відрізняти інфраструктурну проблему від реального багу
- Зрозумієте, як винести транспорт в окремий клас
- Ознайомитеся з підходами для UART, TCP/UDP та BLE-транспорту
- Навчитесь адаптувати DeviceDriver під різні транспорти через dependency injection
-
08 заняття20.08.2026 19:00
ТЕСТОВИЙ ФРЕЙМВОРК НА PYTEST
- Опануєте структуру pytest-проєкту для embedded-тестування
- Навчитесь організовувати тести в tests/smoke і tests/functional
- Розберете роль conftest.py в тестовому фреймворку
- Навчитеся використовувати fixtures різного scope
- Опануєте параметризацію тестів через @pytest.mark.parametrize
- Навчитеся генерувати HTML-звіти через pytest-html або Allure
- Напишете перший повний тест: від підключення до пристрою — до PASSED у терміналі
-
09 заняття25.08.2026 19:00
ТЕСТ-АГЕНТ: ВАРІАНТИ ПІДХОДІВ
- Розберете концепцію test agent і його роль в автоматизованому embedded-тестуванні
- Ознайомитеся з Arduino Nano як агентом для керування GPIO та реле
- Розберете Raspberry Pi як універсальний варіант тест-хоста й агента
- Ознайомитеся з USB-реле модулями для plug-and-play тестування з ПК
- Розберете MOSFET-ключі для timing-критичних сценаріїв
- Порівняєте підходи за ціною, складністю, real-time можливостями та масштабованістю
- Навчитеся писати скрипт, який відправляє команду на агента і читає відповідь від DUT
-
10 заняття27.08.2026 19:00
HIL-СТЕНД: КОНЦЕПЦІЯ ТА ПРОЄКТУВАННЯ
- Розберете, що таке Hardware-in-the-Loop і коли він незамінний
- Зрозумієте, чим HIL відрізняється від unit-тестів без заліза
- Ознайомитеся з компонентами стенду: DUT, test agent, реле, USB-хаб
- Навчитеся проєктувати схему підключення компонентів стенду
- Розберете контракт між компонентами: формат команд і відповідей
- Оберете конфігурацію стенду під свій курсовий проєкт
- Навчитеся проєктувати HIL-стенд під конкретний пристрій
-
11 заняття01.09.2026 19:00
HIL-СТЕНД: ЗБИРАННЯ ТА ПЕРШИЙ ТЕСТ
- Зберете фізичний HIL-стенд за попередньо підготовленою схемою
- Підключите DUT, test agent і компоненти керування живленням
- Інтегруєте HIL-стенд із pytest
- Створите клас HILAgent з методами power_on() та power_off()
- Навчитеся керувати живленням DUT програмно через pytest-фікстуру
- Напишете перший HIL-тест з відключенням живлення
- Розберете типові проблеми під час збирання стенду і способи діагностики
-
12 заняття03.09.2026 19:00
END-TO-END АВТОМАТИЗАЦІЯ НА HIL-СТЕНДІ
- Навчитеся проєктувати E2E-тести для IoT-пристроїв
- Розберете сценарій від зчитування сенсора до відправки MQTT-повідомлення
- Опануєте локальний MQTT-брокер Mosquitto як mock для cloud-частини
- Навчитеся перехоплювати повідомлення пристрою в тестовому середовищі
- Розберете, як відтворювати race conditions через швидкий reboot
- Ознайомитеся з кейсом пошуку memory leak через HIL-тест
- Зрозумієте, які баги HIL-тестування знаходить краще за ручну перевірку
-
13 заняття08.09.2026 19:00
ТЕСТУВАННЯ БЕЗДРОТОВИХ КОМУНІКАЦІЙ: WI-FI ТА BLE
- Навчитеся тестувати Wi-Fi reconnect і поведінку пристрою після втрати мережі
- Розберете сценарії зміни пароля, HTTP 5xx та нестабільного з’єднання
- Ознайомитеся з варіантами симуляції відключення мережі через nmcli, netsh, RPi або smart plug
- Навчитеся писати BLE-тести через бібліотеку bleak
- Розберете сканування реклами, підключення та читання GATT-характеристик
- Ознайомитеся з типовими багами у Wi-Fi та BLE-стеках
- Навчитеся відтворювати зависання, memory leak та проблеми reconnect
-
14 заняття10.09.2026 19:00
ТЕСТУВАННЯ НАДІЙНОСТІ ТА ПРОДУКТИВНОСТІ
- Навчитеся писати long-run тести для embedded-пристроїв
- Розберете сценарії тривалого опитування сенсора та логування heap-статистики
- Опануєте stress testing із навантаженням, що перевищує штатне
- Навчитеся виявляти memory leaks через порівняння heap_size на старті та в кінці тесту
- Зрозумієте різницю між витоком пам’яті та фрагментацією heap
- Ознайомитеся з поняттям watermark у контексті аналізу пам’яті
- Розберете Power Profiling через INA219 або Nordic PPK2 для IoT-пристроїв на батареї
-
15 заняття15.09.2026 19:00
OTA-ОНОВЛЕННЯ ТА ROLLBACK ПРОШИВКИ
- Розберете, чому OTA-оновлення критично тестувати до релізу
- Ознайомитеся з механізмами OTA в ESP-IDF: dual partition та app rollback
- Навчитеся перевіряти успішне оновлення через версію прошивки
- Розберете, як працює rollback при невдалому оновленні
- Навчитеся тестувати втрату зв’язку під час OTA через HIL-стенд
- Розберете сценарії пошкодженого образу та downgrade
- Опануєте автоматизацію OTA-тестів у pytest
-
16 заняття17.09.2026 19:00
CI/CD ДЛЯ EMBEDDED
- Зрозумієте, чому embedded CI відрізняється від хмарного CI
- Розберете, чому для тестів із залізом потрібен self-hosted runner
- Ознайомитеся зі схемою GitLab → Runner на ПК → стенд з пристроєм
- Розберете стадії pipeline: build, flash, test, report
- Навчитеся використовувати esptool, openocd або nrfjprog у CI-процесі
- Розберете шаблон gitlab-ci.yml рядок за рядком
- Навчитеся зберігати Allure-звіти та UART-логи як артефакти
-
17 заняття22.09.2026 19:00
AI-ІНСТРУМЕНТИ В EMBEDDED QA
- Розберете, де AI реально допомагає Embedded QA Engineer
- Навчитеся генерувати тест-кейси з datasheet
- Опануєте підходи до аналізу UART-логів та crash-дампів за допомогою AI
- Ознайомитеся з MCP-серверами для підключення AI-агента до локальних інструментів
- Навчитеся формулювати промпти для embedded-систем, протоколів та логів
- Розберете практичне використання Cursor, Copilot і Claude для QA-задач
- Зрозумієте обмеження AI в embedded і навчитеся перевіряти результати на залізі
-
18 заняття24.09.2026 19:00
КАР’ЄРНИЙ ROADMAP EMBEDDED QA ENGINEER
- Розберете сегменти ринку, де потрібні Embedded QA Engineers
- Ознайомитеся з напрямами IoT, Automotive, MedTech та Aerospace
- Навчитесь оформлювати портфоліо для Embedded QA позицій
- Зрозумієте, як презентувати GitHub із pytest-фреймворком
- Розберете, як показати фото й відео HIL-стенду в портфоліо
- Ознайомитеся з типовими задачами на технічних співбесідах
- Підготуєтеся до запитань щодо протоколів, pytest та embedded-тестування
-
19 заняття29.09.2026 19:00
КОНСУЛЬТАЦІЯ ТА ФІНАЛІЗАЦІЯ КУРСОВОГО ПРОЄКТУ
- Отримаєте індивідуальну допомогу з курсовим проєктом
- Розберете проблеми, які виникли під час збирання стенду або написання тестів
- Проведете code review тестового фреймворку
- Оціните структуру, читабельність і масштабованість проєкту
- Доопрацюєте HIL-стенд, pytest-тести й звітність
- Підготуєте демонстрацію фінального проєкту
- Навчитеся вирішувати, що показувати live, а що виносити в презентацію
-
20 заняття01.10.2026 19:00
ЗАХИСТ ФІНАЛЬНИХ ПРОЄКТІВ
реєстрація
Приєднуйтеся, щоби перейти від ручних перевірок embedded-пристроїв до автоматизованого hardware testing: UART, HIL, pytest, CI/CD та фінальний проєкт на реальному QA-сценарії.