Unit Test vs Integration Test – rozdíl mezi nimi
Klíčový rozdíl mezi testováním jednotek a testováním integrace
- Unit testing je testovací metoda, při které se testují jednotlivé jednotky zdrojového kódu, aby se zjistilo, zda jsou připraveny k použití, zatímco Integration testing kontroluje integraci mezi softwarovými moduly.
- Unit Testing testuje každou část programu a ukazuje, že jednotlivé části jsou správné, zatímco Integration Testing kombinuje různé moduly v aplikaci a testuje jako skupina, aby zjistil, že fungují dobře.
- Testování jednotek začíná specifikací modulu, zatímco testování integrace začíná specifikací rozhraní.
- Unit Testing lze provést kdykoli, na druhou stranu Integration Testing se provádí po testování jednotky a před testováním systému.
- Testování jednotek provádí vývojář, zatímco testování integrace provádí testovací tým.
- Chyby Unit Testing lze najít snadno, zatímco v Integration Testing je obtížné najít chyby.
- Unit Testing je druh testování bílé skříňky, zatímco integrační testování je druh testování černé skříňky.

Co je Unit Test?
Jednotkové testy jsou prováděny vývojáři a testují jednotku kódu (aka modul, komponentu), kterou vyvinul. Jedná se o testovací metodu, při které se testují jednotlivé jednotky zdrojového kódu, aby se zjistilo, zda jsou připraveny k použití. Pomáhá snižovat náklady na opravy chyb, protože chyby jsou identifikovány během raných fází životního cyklu vývoje.
Co je integrační test?
Integrační testování je prováděna testery a testuje integraci mezi softwarovými moduly. Jedná se o techniku testování softwaru, kde jsou jednotlivé jednotky programu kombinovány a testovány jako skupina. Testovací útržky a testovací ovladače se používají jako pomoc při integračním testování. Integrační test se provádí dvěma způsoby, a to metodou zdola nahoru a metodou shora dolů.
Rozdíl mezi Unit Test a Integration Test
Níže je podrobné srovnání mezi testováním jednotek a testováním integrace
| Test jednotky | Integrační test |
|---|---|
| Myšlenkou Unit Testing je otestovat každou část programu a ukázat, že jednotlivé části jsou správné. | Myšlenkou integračního testování je zkombinovat moduly v aplikaci a testovat jako skupina, abyste viděli, že fungují dobře |
| Je to tak nějak Bílá Box Testování | Je to tak nějak Černá Box Testování |
| Lze ji provést kdykoli | Obvykle se provádí po testování jednotky a před Testování systému |
| Testování jednotek testuje pouze funkčnost samotných jednotek a nemusí zachytit chyby integrace nebo jiné problémy v celém systému | Integrační testování může odhalit chyby, když jsou moduly integrovány do celkového systému |
| Začíná se specifikací modulu | Začíná to specifikací rozhraní |
| Věnuje pozornost chování jednotlivých modulů | Dbá na integraci mezi moduly |
| Unit test neověřuje, zda váš kód správně funguje s externími závislostmi. | Integrační testy ověřují, že váš kód správně funguje s externími závislostmi. |
| Obvykle ji provádí vývojář | Obvykle ji provádí testovací tým |
| Hledání chyb je snadné | Hledání chyb je obtížné |
| Údržba jednotkového testu je levná | Údržba integračního testu je nákladná |
