Ho lavorato con TDD per 2 anni e, quando lavoravo in quel periodo, eravamo tutti riluttanti a utilizzare i gestori. Tuttavia, presto si è rivelata la cosa giusta da fare. I vantaggi che abbiamo notato presto erano
- Scoperta di bug in una fase precoce.
- Scrivere un codice migliore senza nemmeno rendersene conto.
- Il tuo codice ora è più gestibile grazie ai test
è tutto in piccoli pezzi (avevamo funzioni che erano 300-400 linee) sciocco. Ora massimo 30 e tutti
testato senza indugio.
I dirigenti non saprebbero come sono tutti interessati a una cosa "Hai finito".
Ma poi si lamentano quando il software continua a rompersi senza rendersene conto.
Con una buona copertura e test sensati. Non è la quantità, ma la qualità che puoi vedere quando qualcuno rompe una funzionalità.
Inoltre, sfortunatamente è difficile se sei da solo. Ho avuto lo stesso problema, poiché potresti aver bisogno di cambiare codice, ad es. Classi base ecc. In modo che tu possa rendere testabili alcune parti del software.
Ti do un esempio. Volevo prendere in giro il repository ma non c'era alcuna interfaccia e ho bisogno di iniettare il repository nel mio livello di servizio e quindi aggiungere / modificare un costruttore in tutto il negozio, questo risultò essere un grande affare ma alla fine ho più di 200 test solo testando una zona del sistema e sono rimasti colpiti.
Di solito faccio quanto segue:
- Mantengo le mie richieste molto brevi
- Solo 1 asserire. Niente roulette russa.
- Eseguo il test di uno scenario negativo ed eccezionale
Per quanto riguarda gli studi di casi temo, non sono sicuro di averne mai visto. Devi costruire il tuo progetto e diventare il tuo caso studio. Potrebbero essere impressionati.
Spero che aiuti