Wpis z mikrobloga

Może i jestem prosty chłop ale czy ktoś z was spotkał się z tym, że testy jednostkowe spełniły swoją rolę i rzeczywiście znalazły błąd? Owszem piszemy testy jednostkowe, kody pokryte ale ich sensowność jest żadna moim zdaniem. Czy ktoś z ręką na sercu w 100% wierzy w swoje testy jednostkowe? Oczywiście mówimy tu o skomplikowanym kodzie który powstaje od lat przez setki programistów a nie hello world czy aplikacja z 2 guzikami. #programowanie
  • 8
1) pomocne przy refaktoringu, gdy chcesz żeby zachowanie zostało takie samo, ale kod wyglądał lepiej

2) gdy dodajesz nowe feature'y i nie chcesz żeby doszło do sytuacji, że dowiesz się za dwa tygodnie że jakaś rzecz się przypadkiem zepsuła i nawet nie wiesz który commit wprowadził ten błąd


@Wrath_of_the_Tyrant: taka jest teoria. Właśnie moje pytanie było czy istnieją tak dobre testy, że jak zrobisz refaktor połowy programu to jesteś w 100%
@ethics: Tak z ręką na sercu to najbardziej przydatne dla uniknięcia jakichś regresji, ewentualnie powstrzymują przed tym żeby "proste hotfixy" o 21 nie sprawiły że wyniki sa do góry nogami.

Ale no nie do podważenia fakt, że częściej są bugi w unitach niż w kodzie ( ͡° ʖ̯ ͡°)
taka jest teoria. Właśnie moje pytanie było czy istnieją tak dobre testy, że jak zrobisz refaktor połowy programu to jesteś w 100% pewny, że nic nie #!$%@?łeś bo testy PASSED.


@ethics: raczej nie sądzę bo trzeba by napisać mega dużo przypadków testowych, ja do tego podchodzę inaczej, po prostu drastycznie zmniejsza to ilość błędów podczas refaktoru ale ja nie traktuję tego jako 100% nigdy.
@ethics: nie rozumiem, naprawdę myślisz "testy nie dają pewności na 100% więc bez sensu je w ogóle pisać"? Żeby pisanie testów się opłaciło wystarczy aby (upraszczając):

czas_pisania_testow < procent_znalezionych_bugow * czas_naprawiania_wszystkich_bugow
jak w 6 godzin napiszesz testy znajdujące 60% bugów, a naprawa wszystkich bez testów zajęłaby > 10h to się opłaca.