私は毎日のプログラミングの練習でTDDを採用しようとしています。私は仕事でそれを非常に効果的に使用していますが、いくつかの複雑なアルゴリズムを使用している私の個人的なプロジェクトで問題を抱えています。
この質問をさせる特定のアルゴリズムは、拡張カルマンフィルターです。私が書いたコードに自信が持てないほど複雑ですが、分割するのが難しいほど単純です。
入力と予想される出力を使用してアルゴリズムのテストを作成することもできますが、中間のステップには自信がないため、途中でスラッシングとショットガンコーディングをたくさん行います。
合理的で複雑なアルゴリズムを使用してTDDを使用したことがある場合、アプローチは何ですか。