David Cermak
Embedded vývojář v Espressif Systems
Přednášky
Zigbee coordinator obvykle běží na čipu s rádiem 802.15.4, v našem případě na ESP32-H2. Co když ale chceme zigbee ovládat/testovat přímo z počítače?
Přednáška představí praktické řešení, ve kterém máme zigbee stack na ESP32-H2, zatímco Host/Linux PC komunikuje s koordinátorem přes USB/PPP a umožňuje ovládat zigbee stejným, transparentním způsobem jako na ESP32-H2.
Na ukázce dvou čipů ESP32-H2/C6 si předvedeme skutečnou komunikaci v zigbee síti: od připojení teplotního senzoru přes konfiguraci, hlášení, čtení naměřených hodnot přímo v PC.
Zaměříme se také na praktické aspekty implementace: konfiguraci PPP/lwIP, síťového spojení a minimalizaci nároků na flash/RAM.
Projekt: https://github.com/david-cermak/zigbee-remote
S nástupem programování pomocí AI asistentů vzniká velké množství kódu, který je potřeba nejen revidovat, ale také otestovat. Nestačí přitom mít testy nebo vysokou code coverage. Důležite je vědět jak dobře naše testy odhalují chyby.
Jedním z přístupů k testování odolnosti systému je fault injection (FI: Záměrné vnášení chyb do systému a sledování jeho chování). Mutation testing využívá stejný princip, ale zaměřuje se na kvalitu testů: Do kódu vnáší malé změny, například změní < na <= nebo + na -, a ověřuje, zda je vaše test-suite odhalí.
Pokud test selže, mutace je "killed". Pokud testy projdou, mutace přežije/"survived" a ukazuje na slabé místo v testech.
V krátké přednášce si představíme princip mutation testingu, nástroj Mull a jeho použití na reálném projektu.