Ta proza Alberto Savoia odpowiada dokładnie na to pytanie (w tym całkiem przyjemnie!):
Testivus o pokryciu testowym
Pewnego ranka programista zapytał wielkiego mistrza:
„Jestem gotowy napisać kilka testów jednostkowych. W jakim zakresie kodu powinienem dążyć? ”
Wielki mistrz odpowiedział:
„Nie martw się zasięgiem, po prostu napisz kilka dobrych testów”.
Programista uśmiechnął się, ukłonił i wyszedł.
...
Później tego samego dnia drugi programista zadał to samo pytanie.
Wielki mistrz wskazał na garnek z wrzącą wodą i powiedział:
„Ile ziaren ryżu powinienem włożyć do tego garnka?”
Zaskoczony programista odpowiedział:
„Jak mogę ci powiedzieć? To zależy od tego, ile osób musisz karmić, jak bardzo są głodni, jakie inne jedzenie podajesz, ile masz ryżu i tak dalej. ”
„Dokładnie” - powiedział wielki mistrz.
Drugi programista uśmiechnął się, ukłonił i wyszedł.
...
Pod koniec dnia przyszedł trzeci programista i zadał to samo pytanie dotyczące pokrycia kodu.
„Osiemdziesiąt procent i nie mniej!” Odpowiedział mistrz surowym głosem, waląc pięścią w stół.
Trzeci programista uśmiechnął się, ukłonił i wyszedł.
...
Po tej ostatniej odpowiedzi młody uczeń podszedł do wielkiego mistrza:
„Świetny mistrzu, dziś słyszałem, że odpowiadasz na to samo pytanie dotyczące pokrycia kodu trzema różnymi odpowiedziami. Dlaczego?"
Wielki mistrz wstał z krzesła:
„Chodź ze mną na świeżą herbatę i porozmawiajmy o tym”.
Po napełnieniu filiżanek gorącą zieloną herbatą wielki mistrz zaczął odpowiadać:
„Pierwszy programista jest nowy i dopiero zaczyna testowanie. W tej chwili ma dużo kodu i żadnych testów. Przed nim jeszcze długa droga; skupienie się teraz na pokryciu kodu byłoby przygnębiające i zupełnie bezużyteczne. Lepiej, żeby przyzwyczaił się do pisania i przeprowadzania testów. Później może się martwić o zasięg. ”
„Z drugiej strony drugi programista ma duże doświadczenie zarówno w programowaniu, jak i testowaniu. Kiedy odpowiedziałem, pytając ją, ile ziaren ryżu powinienem umieścić w garnku, pomogłem jej zrozumieć, że ilość niezbędnych testów zależy od wielu czynników, a ona zna te czynniki lepiej niż ja - w końcu to jej kod . Nie ma jednej, prostej odpowiedzi, a ona jest wystarczająco mądra, aby poradzić sobie z prawdą i pracować z tym. ”
„Rozumiem - powiedział młody uczeń - ale jeśli nie ma jednej prostej odpowiedzi, to dlaczego odpowiedziałeś trzeciemu programistowi„ Osiemdziesiąt procent i nie mniej ”?
Wielki mistrz zaśmiał się tak głośno i głośno, że jego brzuch, dowód, że pił więcej niż tylko zieloną herbatę, opadał w górę iw dół.
„Trzeci programista chce tylko prostych odpowiedzi - nawet jeśli nie ma prostych odpowiedzi… a potem i tak ich nie stosuje”.
Młody uczeń i siwy wielki mistrz skończyli pić herbatę w kontemplacyjnej ciszy.