Курс Embedded QA Engineer
- Online
- Для начинающих, Для опытных
- QA Automation / QA Manual
![]() |
|
| Образовательный центр: | Robot Dreams |
|---|---|
| Формат: | Курс |
| Язык обучения: | Ukrainian |
| Длительность обучения: | 20 занятий |
| Начало курса: | 28.07.2026 |
| Стоимость обучения: | Уточняйте |
В embedded QA ручні перевірки швидко перестають працювати: баги складно відтворити, flaky-сценарії губляться, а тестування hardware не масштабується без автоматизації. На курсі ви побудуєте embedded QA workflow: від UART-комунікації, логів та debugging - до HIL-стендів, pytest-фреймворків, OTA/reliability testing та CI/CD для hardware.
Програма курсу
Вступ до Embedded QA та ручне функціональне тестування
- Розберете, чим Embedded QA відрізняється від Web/Mobile QA
- Зрозумієте роль QA в lifecycle hardware-продукту
- Навчитеся складати тест-кейси для embedded-пристроїв
- Опануєте структуру тест-плану: happy path, негативні сценарії, граничні умови
- Навчитеся документувати дефекти так, щоб розробник зміг їх відтворити
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, а коли - звичайний ПК
Архітектура мікроконтролера та налаштування toolchain
- Розберете, що таке мікроконтролер і чим MCU відрізняється від CPU
- Зрозумієте, чому embedded-пристрої складніше тестувати, ніж веб
- Ознайомитеся з архітектурою ESP32: ядрами, Flash, SRAM та NVS
- Розберете, як архітектура мікроконтролера впливає на поведінку прошивки
- Опануєте базове налаштування ESP-IDF або PlatformIO
- Навчитеся прошивати пристрій через esptool.py
- Навчитесь отримувати стартові логи пристрою через UART
Інструментарій QA-інженера: схеми та лабораторне обляднання
- Дізнаєтеся, навіщо QA-інженеру читати електронні схеми
- Навчитеся знаходити тест-поінти й місця підключення аналізатора
- Ознайомитеся з EasyEDA, KiCad та Altium Designer
- Розберете базові умовні позначення, лінії з’єднань і компоненти на схемах
- Зрозумієте, коли потрібен осцилограф, а коли достатньо логічного аналізатора
- Навчитеся виконувати базові перевірки стенду мультиметром
- Розберете, навіщо потрібен лабораторний блок живлення під час тестування
Аналіз комунікаційних протоколів I2C, SPI, UART та основи Hardware Debugging
- Розберете, навіщо QA-інженеру аналізувати трафік на шині
- Ознайомитеся зі структурою I2C-кадру й типовими помилками протоколу
- Розберете SPI: режими CPOL/CPHA, роль CS-лінії та відмінності від I2C
- Опануєте базову структуру UART: стартові й стопові біти, baudrate, типові помилки
- Навчитеся підключати логічний аналізатор і захоплювати трафік
- Навчитеся декодувати пакети й знаходити помилки в комунікації між чіпами
- Зрозумієте, що таке JTAG/SWD і коли QA звертається до hardware debugging
Взаємодія з пристроєм через UART: Python i Pyserial
- Розберете, як працює serial port на рівні операційної системи
- Навчитеся відкривати UART-з’єднання через Python і pyserial
- Опануєте параметри з’єднання: baudrate, parity, stopbits
- Навчитеся програмно знаходити доступні порти через serial.tools.list_ports
- Розберете, як читати "сирий" UART-потік з пристрою
- Навчитеся парсити змішаний вивід прошивки: debug-логи, JSON і шум після reboot
- Створите клас DeviceDriver, який приховує деталі з’єднання від тестів
Надійність драйвера і варіації транспорту
- Навчитесь обробляти типові помилки: timeout, обрізану відповідь, невалідний JSON, зникнення порту
- Опануєте retry-патерн із backoff для нестабільних embedded-сценаріїв
- Розберете, як логувати спроби для дебагу flaky-тестів
- Навчитеся відрізняти інфраструктурну проблему від реального багу
- Зрозумієте, як винести транспорт в окремий клас
- Ознайомитеся з підходами для UART, TCP/UDP та BLE-транспорту
- Навчитесь адаптувати DeviceDriver під різні транспорти через dependency injection
Тестовий Фреймворк на Pytest
- Опануєте структуру pytest-проєкту для embedded-тестування
- Навчитесь організовувати тести в tests/smoke і tests/functional
- Розберете роль conftest.py в тестовому фреймворку
- Навчитеся використовувати fixtures різного scope
- Опануєте параметризацію тестів через @pytest.mark.parametrize
- Навчитеся генерувати HTML-звіти через pytest-html або Allure
- Напишете перший повний тест: від підключення до пристрою - до PASSED у терміналі
Тест-агент: варіанти підходів
- Розберете концепцію test agent і його роль в автоматизованому embedded-тестуванні
- Ознайомитеся з Arduino Nano як агентом для керування GPIO та реле
- Розберете Raspberry Pi як універсальний варіант тест-хоста й агента
- Ознайомитеся з USB-реле модулями для plug-and-play тестування з ПК
- Розберете MOSFET-ключі для timing-критичних сценаріїв
- Порівняєте підходи за ціною, складністю, real-time можливостями та масштабованістю
- Навчитеся писати скрипт, який відправляє команду на агента і читає відповідь від DUT
HIL-стенд: концепція та проєктування
- Розберете, що таке Hardware-in-the-Loop і коли він незамінний
- Зрозумієте, чим HIL відрізняється від unit-тестів без заліза
- Ознайомитеся з компонентами стенду: DUT, test agent, реле, USB-хаб
- Навчитеся проєктувати схему підключення компонентів стенду
- Розберете контракт між компонентами: формат команд і відповідей
- Оберете конфігурацію стенду під свій курсовий проєкт
- Навчитеся проєктувати HIL-стенд під конкретний пристрій
HIL-стенд: збирання та перший тест
- Зберете фізичний HIL-стенд за попередньо підготовленою схемою
- Підключите DUT, test agent і компоненти керування живленням
- Інтегруєте HIL-стенд із pytest
- Створите клас HILAgent з методами power_on() та power_off()
- Навчитеся керувати живленням DUT програмно через pytest-фікстуру
- Напишете перший HIL-тест з відключенням живлення
- Розберете типові проблеми під час збирання стенду і способи діагностики
End-to-end автоматизація на HIL-стенді
- Навчитеся проєктувати E2E-тести для IoT-пристроїв
- Розберете сценарій від зчитування сенсора до відправки MQTT-повідомлення
- Опануєте локальний MQTT-брокер Mosquitto як mock для cloud-частини
- Навчитеся перехоплювати повідомлення пристрою в тестовому середовищі
- Розберете, як відтворювати race conditions через швидкий reboot
- Ознайомитеся з кейсом пошуку memory leak через HIL-тест
- Зрозумієте, які баги HIL-тестування знаходить краще за ручну перевірку
Тестування бездротових комунікацій: Wi-Fi та BLE
- Навчитеся тестувати Wi-Fi reconnect і поведінку пристрою після втрати мережі
- Розберете сценарії зміни пароля, HTTP 5xx та нестабільного з’єднання
- Ознайомитеся з варіантами симуляції відключення мережі через nmcli, netsh, RPi або smart plug
- Навчитеся писати BLE-тести через бібліотеку bleak
- Розберете сканування реклами, підключення та читання GATT-характеристик
- Ознайомитеся з типовими багами у Wi-Fi та BLE-стеках
- Навчитеся відтворювати зависання, memory leak та проблеми reconnect
Тестування надійності та продуктивності
- Навчитеся писати long-run тести для embedded-пристроїв
- Розберете сценарії тривалого опитування сенсора та логування heap-статистики
- Опануєте stress testing із навантаженням, що перевищує штатне
- Навчитеся виявляти memory leaks через порівняння heap_size на старті та в кінці тесту
- Зрозумієте різницю між витоком пам’яті та фрагментацією heap
- Ознайомитеся з поняттям watermark у контексті аналізу пам’яті
- Розберете Power Profiling через INA219 або Nordic PPK2 для IoT-пристроїв на батареї
OTA-оголошення та Rollback прошивки
- Розберете, чому OTA-оновлення критично тестувати до релізу
- Ознайомитеся з механізмами OTA в ESP-IDF: dual partition та app rollback
- Навчитеся перевіряти успішне оновлення через версію прошивки
- Розберете, як працює rollback при невдалому оновленні
- Навчитеся тестувати втрату зв’язку під час OTA через HIL-стенд
- Розберете сценарії пошкодженого образу та downgrade
- Опануєте автоматизацію OTA-тестів у pytest
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-логи як артефакти
AI-інструменти в Embedded QA
- Розберете, де AI реально допомагає Embedded QA Engineer
- Навчитеся генерувати тест-кейси з datasheet
- Опануєте підходи до аналізу UART-логів та crash-дампів за допомогою AI
- Ознайомитеся з MCP-серверами для підключення AI-агента до локальних інструментів
- Навчитеся формулювати промпти для embedded-систем, протоколів та логів
- Розберете практичне використання Cursor, Copilot і Claude для QA-задач
- Зрозумієте обмеження AI в embedded і навчитеся перевіряти результати на залізі
Кар'єрний Roadmap Embedded QA Engineer
- Розберете сегменти ринку, де потрібні Embedded QA Engineers
- Ознайомитеся з напрямами IoT, Automotive, MedTech та Aerospace
- Навчитесь оформлювати портфоліо для Embedded QA позицій
- Зрозумієте, як презентувати GitHub із pytest-фреймворком
- Розберете, як показати фото й відео HIL-стенду в портфоліо
- Ознайомитеся з типовими задачами на технічних співбесідах
- Підготуєтеся до запитань щодо протоколів, pytest та embedded-тестування
Консультація та фіналізація курсового проєкту
- Отримаєте індивідуальну допомогу з курсовим проєктом
- Розберете проблеми, які виникли під час збирання стенду або написання тестів
- Проведете code review тестового фреймворку
- Оціните структуру, читабельність і масштабованість проєкту
- Доопрацюєте HIL-стенд, pytest-тести й звітність
- Підготуєте демонстрацію фінального проєкту
- Навчитеся вирішувати, що показувати live, а що виносити в презентацію
Захист фінальних проєктів
Вимоги для старту
Курс підійде тим, хто вже має базу в QA Automation або Embedded-розробці, впевнено працює з Python і розуміє основи електроніки. Для навчання вам знадобиться лише ноутбук і доступний мікроконтролер ESP32. Решту компонентів (датчики, модулі тощо) ви підбиратимете разом із викладачем у процесі курсу - під конкретні завдання та обрану прошивку.
Особливості курсу
- Допомога ментора
- Практика з UART, HIL, pytest, CI/CD та IoT
- Курсовий проєкт
- Сертифікат про проходження курсу
Викладачі курсу
Богдан Горбанич - Senior Embedded QA Engineer at SQUAD
Категории курса
Читайте нас в Telegram, чтобы не пропустить анонсы новых курсов.
