Unit testing, česky jednotkové testování, je základní technika testování softwaru, při které se ověřuje funkčnost těch nejmenších, izolovaných částí kódu – tzv. "jednotek" (units). Jednotkou může být jednotlivá funkce, metoda nebo třída. Cílem není testovat, jak systém funguje jako celek, ale ověřit, že každá jednotlivá cihla, ze které je dům postaven, je sama o sobě perfektně rovná a pevná.
V praxi to funguje tak, že programátor pro každou jednotku napíše malý automatizovaný test. Tento test definuje sadu vstupních dat a očekávaný výsledek. Například pro funkci, která sčítá dvě čísla, by test ověřil, že když na vstup pošle 2 a 3, na výstupu skutečně dostane 5. Sada těchto testů se pak spouští automaticky při každé změně v kódu.
Přínos unit testů je obrovský. Dávají vývojářům jistotu, že jejich změny nerozbily nic v jiné části aplikace – pokud všechny testy projdou, je vysoká šance, že je vše v pořádku. To dramaticky zrychluje vývoj, protože se eliminuje strach z úprav existujícího kódu. Slouží také jako skvělá forma "živé" dokumentace – z testů je často na první pohled jasné, co má daná část kódu dělat. V rámci CI/CD pipeline je automatické spouštění unit testů naprosto klíčovým krokem pro zajištění kvality a stability.