VC2008でのcppunitによるテストの主な流れ

①テスト対象プロジェクト作る(main関数なし。ありでもいいかもしれないが試してない)
②テスト用のプロジェクトを作る
③テスト用のプロジェクトの依存関係に、テストしたいプロジェクトを追加しておく
④テスト用プロジェクトにテストとmain関数を作る
⑤テスト用プロジェクトをビルドして実行
大体こんな流れ。
以下、もろもろのメモ。
・テスト対象プロジェクトの実行用にRunプロジェクトを用意しているケースがあるが、これはライブラリ実行用のプロジェクトと思われる。
テスト用プロジェクトのビルド対象にRunプロジェクトを含める必要なし。なぜなら、テスト用プロジェクトでインスタンス生成するから。
・1クラスに対して、1テストクラスを用意するのが基本。
1テストクラスを1テストスイートを作成し、CPPUNIT_TEST_SUITE_REGISTRATIONでどんどんテストスイートを登録していけば、一気に複数のクラスをテストできるようになる。
・mainを含むプロジェクトはテスト対象にできない。なぜなら、テストプロジェクトのmainとかぶっちゃうから。
テスト対象はライブラリ化しておいて、別途Runプロジェクトを用意してそちらにmainだけ用意すること。
以下、疑問点
・インスタンスが生成できないインタフェースとかは単体テストできないんだろうか。
派生クラスのインスタンス生成して派生クラスをテストしろってこと?
・Linuxの場合はどうなる?
make testでテスト用プロジェクトが走るようにうまいこと構成する必要がある?

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です