“we don’t have time to write tests” == “we don’t have the skills to write tests quickly” – Spock for the rescue

Jakiś czas temu zobaczyłem gdzieś tytułowy cytat i pomyślałem: kurcze gościu ma sporo racji. Często piszemy mało testów bo nie mamy odpowiednich umiejętności żeby robić to szybko a biznes chce tylko nowe funkcjonalności które przynoszą mu kasę. Gościem od cytatu był @AndrzejKrzywda. 😉

W swojej pierwszej pracy przez rok napisałem aż 0 (zero) testów jednostkowych. Nikt nie widział potrzeby ich istnienia. Czym to skutkowało ? Chyba każdy potrafi sobie wyobrazić. Zmiana jednego if’a żeby poprawić buga skutkowała powstaniem 10 następnych. Ale “spoko mamy testerów oni to wykryją…” W sumie to wykrywali, ale więcej czasu poświęcałem na rozmowy z działem QA niż na kodowaniu. Całe szczęście te czasy minęły – zmieniłem pracę i od razu trafiłem do małego projektu gdzie było duże pokrycie testami. Irytacja gdy mała zmiana powodowała “wywalenie się” kilku testów była ogromna. Jako “świeżak” nie widziałem sensu w testowaniu – przecież to tyle czasu na pisanie kodu który nie daje nowej funkcjonalności. Jakby tego było mało w projekcie wszystkie testy były pisane w Groovy z użyciem Spock’a. Jako zagorzały fan Eclipse’a doinstalowałem potrzebne pluginy i zacząłem dodawać kolejne testy.  Wprawiony w Groovy’m trafiłem do kolejnego projektu. A tam czekały na mnie testy z użyciem JUnita…

Zrozumiałem zachwyt kolegów nad Spockiem 🙂

Continue reading ““we don’t have time to write tests” == “we don’t have the skills to write tests quickly” – Spock for the rescue”