テスト対象を切り離す方法 実用的なプログラムの開発の中でUnit Test(UT)を作成しようとするとすぐに、「テストしたいオブジェクトとは別のオブジェクトがじゃまになってテストが書けない。」という問題にぶつかります。この問題の解決にはいくつか定石がありますので、基本的な3つの定石を紹介します。例はRubyで書いていますが、他の言語の場合も考え方は変わりません。 1.サブクラスを作成し、メソッドをオーバーライドする方法 ちょっと無理やりな例ですが、現在時刻の時(hour)の部分だけを12時間表記の文字列にするクラスCurrentHourPrinterを作ってみます。 ファイルCurrentHourPrinter.rb ---------------------------------------------------------------------------------------