• Showing Page History #82196

testing framework "iutest"


iutest のプロジェクト Wiki ページへようこそ。


iutest とは


iutest は、include のみで使える C++テストフレームワーク です。
iutest は Google Test のインターフェイスを踏襲しています。



コーディング


  • はじめに
    iutest は、include するのみで使うことができる C++テストフレームワーク です。
    "iutest/include" をインクルードパスに追加し、
       #include "iutest.hpp"
    
    とするだけです。


  • マクロ
    iutest のテスト用マクロは、 IUTEST_ から始まります。
    IUTEST_ASSERT_ から始まるマクロは致命的なアサーション。
    IUTEST_EXPECT_ から始まるマクロは致命的ではないアサーションになります。
    詳細は、ヘッダーファイルもしくは付属の doxygen ドキュメントをご確認ください。


  • テストを書く
    最も簡単なテストの記述を以下に示します。
    IUTEST(CaseName, TestName)
    {
        int x = 0;
        IUTEST_ASSERT_EQ(0, x);
    }
    
    IUTEST マクロからテストの記述を開始します。
    あとは、アサーションマクロを使用してあなたのコードをテストするだけです。
    テストには、この他に パラメータテスト、型付けテスト、型パラメータテストなどがあります。


  • main 関数
    iutest を実行するには、初期化と実行のマクロを記述するだけです。
    int main(int argc, char** argv)
    {
    	IUTEST_INIT(&argc, argv);
    	return IUTEST_RUN_ALL_TESTS();
    }
    



  • gtest のインターフェイスを使う
    iutest は gtest との切り替えヘッダを提供しています。
    gtest の記法(ASSERT_EQなど)で書きつつ、iutest の実装を使用したり
    iutest の記法(IUTEST_ASSERT_EQなど)で書きつつ、 gtest の実装を使用できます。


ここに書かれている内容は、フレームワークのほんの一部です。
詳細は、ヘッダーファイルやドキュメントをご確認ください。