Apr 12, 2012

デバッグの普通だが効果のあるテクニック

1. 前提

発生を想定できる分岐は、すべてコーディングされていること

つまりまず第一にコードに漏れがないようにする。

そのためには、手抜きをしないという強い道徳心・精神力が必要である。

また、徹底した個人単位でのコードレビューが必要である。

(コードレビューとは、算数の試験の検算に相当します)

2. ソースコード全行通過テストをする

これが、最も大切である。


3. 通過テストの確認は、デバッグ用ログを使う

ログを出すように、機械的にコーディングする習慣があると、気が楽になります。

また、テスト結果から悩み考えるより、
詳細デバッグ用ログを追跡することが、
時間の節約になることがとても多くあります。

4. 関数単体テスト

総合テスト環境で全関数が試験できることが理想であるが、
手間が膨大になる。

したがって、分担開発のときなどは、
担当分の関数だけ単体テストすることも当然必要

5. 実現しにくいテストケースは、if 条件を否定反転させて実行

最後の手段で、
テストデータの準備がどうしても難しいときは
if 条件を否定反転させて実行もありうる。