序文
CppUnitはは、LinuxおよびWindowsオペレーティングシステムのサポート、オープンソースのユニットテストフレームワークである、非常に、あなたがコンパイルするには、Windows上で直接VCを使用することができ、直接リンクは正常に使用することができ、動的および静的ライブラリを取得するには、Linuxの直接のソースのコンパイラで実行することができますデバッグが簡単。CppUnitのソースフレームワークは、JavaやPythonの言語に適用され広く使用され、言語におけるのCppUnitの使用に精通して、他の言語もテストフレームワークを言及し、この紙のCppUnit-1.12.1例とデモンストレーションとして指示。
例
CppUnitの下にコンパイルしてインストールするには、Linuxのソースコード
- CppUnit-1.12.1ディレクトリにソースファイルを抽出します
- CDのCppUnitの-1.12.1
- ./configure --prefix =インストールパス(絶対パスでなければなりません)
- 作ります
- make installを
編集テストコード
次の3つのファイルのmain.cppに、組織simpleTest.h、simpleTest.c、ディレクトリファイルの合計は以下のとおりです。
3つのソースファイルを次のように
//main.cpp文件 の#include "のCppUnit / TestResultCollector.h" の#include "のCppUnit / TextOutputter.h" の#include "のCppUnit / XmlOutputter.h" の#include "のCppUnit / CompilerOutputter.h" の#include「のCppUnit / TestResult.h " の#include "のCppUnit / TestRunner.h" の#include "のCppUnit /エクステンション/ TestFactoryRegistry.h" の#include <cstdlib> の#include <のostream> int型のmain() { CppUnitは:: TestResult R。 CppUnitは:: TestResultCollectorのRC。 r.addListener(&RC); //准备好结果收集器 のCppUnit ::テストランナーランナー; //定义执行实体 runner.addTest()CppUnitは:: TestFactoryRegistry :: getRegistryの( "alltest" makeTest()); // CppUnitは:: TextOutputter O(&RC、STD :: coutの); //o.write()。//将结果输出 //はstd :: ofstreamのファイル。 //file.open("./UnitTest.xml "); // CppUnitは:: XmlOutputter XO(&RC、ファイル); //xo.write()。 CppUnitは:: CompilerOutputterコ(&RC、STD :: coutの); co.write(); rc.wasSuccessfulを返しますか()?0:-1; }
// SimpleTestの.hの文件 の#include "のCppUnit /拡張子/ HelperMacros.h" クラスSimpleTestの:公共CppUnitは:: TestFixture { CPPUNIT_TEST_SUITE(SimpleTestの); CPPUNIT_TEST(TEST1)。 CPPUNIT_TEST(TEST2)。 CPPUNIT_TEST_SUITE_END(); 公共: 無効TEST1(); 空TEST2(); }。
//simpleTest.cpp文件 の#include "simpleTest.h" の#include <ストリング> の#include <入出力ストリーム> の#include "のCppUnit / TestCase.h" の#include "のCppUnit / TestAssert.h" CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(SimpleTestの、 "alltest")。 ボイドSimpleTestの:: TEST2() { CPPUNIT_ASSERT(3 == 3)。 } ボイドSimpleTestの:: TEST1() { CPPUNIT_ASSERT(2 == 2)。 }
次のようにコンパイラのコマンドは次のとおりです。
G ++ main.cppにsimpleTest.cpp -oテスト-I /ホーム/ chusiyong / CppUnitは/インストール/ -L /ホーム/ chusiyong / CppUnitは/インストール/ libに-Wl、-Bstatic -lcppunit -Wl、-Bdynamic -ldlを含めます
以下の結果と実行可能ファイルを実行します。
OK(2)
これは、すべてのユースケースが正常に実行されることを意味します