Sto cercando di adottare TDD nella mia pratica di programmazione quotidiana. Lo utilizzo molto efficacemente, ma ho problemi con i miei progetti personali in cui utilizzo alcuni algoritmi complessi.
Il particolare algoritmo che mi fa fare questa domanda è il filtro Extended Kalman. È abbastanza complesso che non sono sicuro del codice che ho scritto, ma è abbastanza semplice da renderlo difficile da rompere.
Potrei scrivere un test per l'algoritmo con un input e l'output atteso, ma farò molta codifica thrashing e shotgun nel mezzo perché non ho fiducia in quei passaggi intermedi.
Se hai lavorato con algoritmi ragionevoli e complessi e usi TDD, qual è il tuo approccio?