Sto appena iniziando a fare i conti con TDD, e ho 2 domande veloci;
Suppongo che se stessimo scrivendo software per una società di software, che TDD avrebbe funzionato insieme al design del software? tutti i diagrammi UML, ERD, diagrammi di flusso ecc ...
La mia seconda domanda è, nel modo in cui sto facendo i miei test al minuto, penso a ciò che verrà chiamato nel codice (ad esempio un metodo) e penso a tutti i possibili input errati e input corretti. Quindi, per esempio, supponiamo di sapere che ho bisogno di chiamare un "loadfile", quindi scrivo solo il codice sufficiente per far passare il test ...
Ma poi comincio anche a pensare, cosa succede se non si specifica un parametro o un file non valido, quindi scrivo qualche altro test per verificare le eccezioni - il che comporta l'aggiunta di un po 'di logica nel metodo ( quindi viene restituita l'eccezione corretta
Questo è l'approccio corretto al TDD?