Gli unit test sono uno strumento che guida il disegno del codice e la lente che evidenzia i difetti del disegno nel codice esistente.
Propongo questo secondo micro-esercizio di TDD é un classico problema, quello di testare in presenza di membri statici o di singleton.
Immagina di aver ereditato il codice che produce e poi stampa i biglietti di attesa con il numero del turno: la classe TurnTicket che rappresenta il biglietto col numero del turno, la classe TurnNumberSequence che genera la sequenza dei numeri e TicketDispenser che restituisce ogni volta un nuovo biglietto per il turno. (
http://www.pastie.org/1039025)
Il micro-esercizio consiste nello scrivere gli unit test per la classe TicketDispenser e nel postare la tua soluzione.
Per rendere l'esercizio piú realistico e interessante nel effettuare le modifiche e i refactoring che ritieni utili assicurati di non introdurre bug, seguendo gli stessi passi che faresti con codice di produzione e con codice esteso e troppo complicato da comprendere completamente.