K těm testům.
Já jsem frontendista. A unit testy na frontendu jsou můj pet peeve. Jasně, pokud píšu nějaký kus business kódu, tak jsou super, ale jinak mi připadá, že jsou pro frontend naprosto nevhodné. Spousta kódu je závislá na nějakém UI frameworku (posílání eventů, rendering) a test často vypadá tak, že se to celé namockuje a pak se v testu explicitně otestuje, že každá metoda byla zavolána se správnými parametry. UI kód prostě nemá rozumný výstup pro otestování.
Jinak hlavní problém unit testů je pro mě mockování. Jsou jazyky, kde se mockuje snadno (např. javascript). A pak jazyky, kde se nedá mockovat skoro vůbec. Pak se kvůli mockování dělají strašné složitosti v architektuře (např. všechno je interface). Má to i hezký název Test-induced Design Damage.
Byl jsem na spoustě projektů, které totálně zesložitily architekturu kvůli testování, a nakonec se tam skoro žádné testy nenapsaly.