Jakoś na początku tego roku miałem prezentację na wrocławskiej grupie .NET dotyczącą unit testingu. Muszę powiedzieć, że byłem bardzo pozytywnie zaskoczony liczbą obecnych osób, co tylko pokazuje, jak ważne są dla nas testy jednostkowe (albo chcemy, żeby stały się ważne) 🙂
Było to omówienie tematu na podstawie naszej kochanej platformy, ale oczywiście nakłaniam do tego, żeby testy pisać zawsze, niezależnie od technologii / języka / platformy, w której piszemy. Nie chodzi tu tylko o sprawdzanie, czy nasz kod prawidłowo się wykonuje – aczkolwiek jest to oczywiście nr 1. Bardzo ważnym aspektem unit testów jest to, że tworzą one fantastyczną dokumentację kodu – klikamy na test, debugujemy i w parę chwil jesteśmy w stanie ocenić to, w jaki sposób w tym konkretnym miejscu działa program.
Jeżeli chodzi o zestawy do testowania, to najbardziej lubię (i polecam):
.NET:
xUnit – unit testing framework, świetny w swojej prostocie
nSubstitute – mocking library, chyba najłatwiejsza biblioteka do mockowania jaką znam
AutoFixture – ułatwia życie podczas „przygotowywania” testów
Javascript:
Jasmine – unit testing framework (BDD – behaviour driven development)
Chutzpah / Karma – test runner dla Javascriptu, w pliku json można umieścić wszystkie referencje, ogromna wygoda
A Wy z czego na co dzień korzystacie?