Quando si decide di scrivere un'applicazione usando TDD come metodologia la batteria di test nasce in modo naturale metodo dopo metodo ottenendo un livello di coverage sufficientemente elevato. Un alto coverage però non vuol sempre dire che i test siano efficaci, anzi talvolta ci troveremo in situazioni in cui un metodo a runtime genera un'eccezione. La cosa da fare in questo caso è, prima ancora di correggere il bug, scrivere un test che verifica che il bug esiste, lanciarlo per ottenere la barra rossa e poi correggere il bug per far tornare verde la barra. In questo modo man mano troviamo nuovi bug, la nostra libreria di test si evolve fino a coprire tutti i casi possibili (o quasi) migliorando l'affidabilità della barra verde.