----
== testing framework "iutest" ==
----
iutest のプロジェクト Wiki ページへようこそ。[[BR]]
[[BR]]
----
== iutest とは ==
----
iutest は、include のみで使える C++テストフレームワーク です。[[BR]]
iutest は Google Test のインターフェイスを踏襲しています。[[BR]]
[[BR]]
* [readme]
* ドキュメント http://iutest.sourceforge.jp/doc/index.html
[[BR]]
----
== コーディング ==
----
* はじめに[[BR]]
iutest は、include するのみで使うことができる C++テストフレームワーク です。[[BR]]
"iutest/include" をインクルードパスに追加し、[[BR]]
{{{
#include "iutest.hpp"
}}}
とするだけです。[[BR]]
[[BR]]
* マクロ[[BR]]
iutest のテスト用マクロは、 IUTEST_ から始まります。[[BR]]
IUTEST_ASSERT_ から始まるマクロは致命的なアサーション。[[BR]]
IUTEST_EXPECT_ から始まるマクロは致命的ではないアサーションになります。[[BR]]
詳細は、ヘッダーファイルもしくは付属の doxygen ドキュメントをご確認ください。
[[BR]]
* テストを書く[[BR]]
最も簡単なテストの記述を以下に示します。[[BR]]
{{{
IUTEST(CaseName, TestName)
{
int x = 0;
IUTEST_ASSERT_EQ(0, x);
}
}}}
IUTEST マクロからテストの記述を開始します。[[BR]]
あとは、アサーションマクロを使用してあなたのコードをテストするだけです。[[BR]]
テストには、この他に パラメータテスト、型付けテスト、型パラメータテストなどがあります。
[[BR]]
* main 関数[[BR]]
iutest を実行するには、初期化と実行のマクロを記述するだけです。
{{{
int main(int argc, char** argv)
{
IUTEST_INIT(&argc, argv);
return IUTEST_RUN_ALL_TESTS();
}
}}}
[[BR]]
[[BR]]
* gtest のインターフェイスを使う[[BR]]
iutest は gtest との切り替えヘッダを提供しています。[[BR]]
gtest の記法(ASSERT_EQなど)で書きつつ、iutest の実装を使用したり[[BR]]
iutest の記法(IUTEST_ASSERT_EQなど)で書きつつ、 gtest の実装を使用できます。[[BR]]
[[BR]]
ここに書かれている内容は、フレームワークのほんの一部です。[[BR]]
詳細は、ヘッダーファイルやドキュメントをご確認ください。[[BR]]