ユニットテスト

ユニットテスト(Unit Testing)

ユニットテストは、次の基本ガイドラインに従って作成する。

  • パブリックメソッドをテストする。
  • テスト結果に影響を与える依存オブジェクトはモック化する。
  • ディスク関連の依存は可能な限り避ける。
  • ネットワーク関連の依存は使用しない。

言語別の単体テストフレームワーク

テストコードに対する個人的な考え

  • テストコードは一種の保険のようなものだと思う。
    • つまり、コードを変更するときにテストコードがなければ、そのコードが本当に正しく動くのか不安になる。もしテストがあれば、その不安はなくなる。
    • 人がコードを書く以上、誰でもミスをする。テストコードを書くと、発生し得るすべてのケースを考え、実行しながら証明できる。
    • なくても運用はできるが、あると心強いものだと思う。
  • テストコードを書くことは、ロジックが正常に動作することの証明だと思う。
    • コードが正常に動作するよう実装されていることの証明である。
  • テストコードは要求仕様書になり得る。
    • ソースコードがどのような要求条件で、どのように動作するのかを把握できるようになる。

参考文書