View Full Version : Test: cosa è obbligatorio
Bene.
E' da un po' che mi capita di lavorare con test che nell'assert non è specificata alcuna stringa.
Io la renderei obbligatoria.
Sia perchè quando durante un refactoring fallisce un test subito si capisce il perchè e secondo perchè si rendono i test molto più chiari e semplici da capire per chi li legge la prima volta.
nonostante sono uno di quelli che trascura molto spesso questi particolari, sono d'accordo ocn Bonfo, sono molto utili, e penso che sia opportuno prestarci più attenzione
Basta limitarsi a mettere una sola assert per ogni test ed ecco che non serve il testo :)
Non sono così d'accordo ufo.
L'ultimo tes che ho avuto a mano controllava la trasformazione della stone in gemma.
Dopo l'avvenuta trasformazione bisognava controllare che il tipo fosse GEMMA, il COLORE e che fosse DROPPED....
...tu avresti riscritto il test 3 volte solo per controllare proprietà diverse???
:confused: :confused:
Avremmo troppi test da eseguire e i tempi per lanciarli tutti crescerebbero troppo.
No so...non sono molto convinto :D
Ufo ha ragione in parte, bisogna cercare di mantenere una sola assert per test. Nella situazione segnalata da Bonfo, si puo' creare un nuovo test case con i tre test magari. La parola chiave e' fare le cose in maniera intelligente: se il test e' piu' chiaro e semplice mettendo piu' di un assert, si puo' fare.
Riguardo alla stringa, io non la metterei obbligatoria, ma molto molto consigliata. Se poi si dovesse continuare a ignorarla, allora valuteremo il renderla obbligatoria, ma mi affido alla vostra responsabilita' affinche' questo non accada.
io con test complessi(partire da una situazione e farla evolvere fino a un certo punto, come per le crush)mi sono trovato molto comodo a lavorare con assert intermedi, che mi segnalassero il cambio di stato(prima e verificata una condizione, e poi ne è verificata l'opposto). In questa maniera si evita di scrivere test che sono verdi ma non testano nulla(questo capita solo però facendo test non in TDD, cosa che capita nei refactoring o per scoprire un bug)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.