C言語でフェイク関数が使いたくてfff(Fake Function Framework)にたどり着いた。テスト対象の関数には一切手を加えずにstatvfs()をフェイク関数に置き換えてユニットテストすることができた。恐ろしく単純なコードで実現出る。 セットアップ # 今回ユニットテストのフレームワークはgoogletest wget http://googletest.googlecode.com/files/gtest-1.7.0.zip unzip gtest-1.7.0.zip cd gtest-1.7.0 mkdir build cd build cmake .. # 今回のサンプルではgooglemockは使わないけど入れておいた。 wget http://googletest.googlecode.com/files/gtest-1.7.0.zip unzip