Testing je proces ověřování kvality softwaru, při kterém je cílem zjistit, zda software splňuje všechny zadané požadavky, funguje správně a dosahuje požadovaných výsledků. Testování se obvykle dělí na postupné fáze, a to sice tyto:
- Unit testing: Testování jednotlivých částí softwaru a kontrola, zda každá tato část funguje samostatně
- Integration testing: Testování propojení mezi jednotlivými částmi softwaru, snaha zjistit, jestli fungují správně jako celek
- System testing: Testování softwaru jako celku na základě specifikací a požadavků, ověřování, že jsou všechny splněny
- Acceptance testing: Toto testování provádí sám klient, kontroluje, zda je vše podle jeho představ
- Performance testing: Testování výkonnosti a stability softwaru za různých zátěžových podmínek. Cílem je ověřit jak software funguje při různých požadavcích na výkon.
- Security testing: Snaha odhalit a případně odstranit bezpečnostní chyby, rizika a slabá místa. Ověřování bezpečnosti dat, přístupových práv a zranitelnosti vůči útokům.
Testování je nedílnou součástí vývoje a přispívá k jeho spolehlivosti, stabilitě a bezpečnosti.