Session
Faccio prima il refactor o i test?
Questo paradosso è molto antico e viene citato da alcuni filosofi dell'antica Grecia, tra cui Aristotele e Plutarco. La sua formulazione più nota è attribuita ad Ambrogio Teodosio Macrobio, studioso Romano del IV secolo, e recita "Ovumne prius extiterit an gallina?".
Nel lavoro dello sviluppatore spesso abbiamo a che fare con "codice legacy" e ci troviamo di fronte proprio al paradosso dell'uovo e della gallina!
La prima regola del refactoring è avere dei test che ci proteggono da cambiamenti indesiderati di comportamento. Spesso il codice non è facilmente testabile e per riuscire a scrivere dei test unitari dobbiamo prima modificare parte del codice non coperto da test.
Come possiamo uscire da questo rischioso ciclo?
I "Characterization test", detti anche "Golden Master test", sono molto utilizzati a questo scopo, ma non sono test unitari. Essi possono essere la nostra "rete di sicurezza", ma non ci aiutano tantissimo nella comprensione del codice. In questo workshop vedremo altri modi per testare legacy code e fare contestualmente refactor in sicurezza, scrivendo test unitari e scendendo nei dettagli delle logiche del codice legacy.
Gianni Bombelli
Gung-ho Software Craftsman, Experienced Learner & Technical Coach @ freelance
Milan, Italy
Links
Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.
Jump to top