「CppUnit」の版間の差分
提供: C++入門
(相違点なし)
|
2013年3月5日 (火) 23:35時点における版
CppUnit は、 C++ 向けのユニットテストフレームワークです。
読み方
- CppUnit
- しーぴーぴー ゆにっと
目次
概要
インストール
FreeBSDにインストールする場合
ports コレクションからインストールする場合
cd /usr/ports/devel/cppunit sudo make install clean
pkgコマンドでインストールする場合
sudo pkg install cppunit
portmasterコマンドでインストールする場合
sudo portmaster -y -d /usr/ports/devel/cppunit
CentOSにインストールする場合
CentOS に yum コマンドでインストールする場合。
sudo yum -y install cppunit cppunit-devel cppunit-doc
テストフレームワークのサンプルコード
foo.hpp
プログラムの実体。
#ifndef FOO_HPP #define FOO_HPP class foo { public: int add(int a, int b) { return a+b; } }; #endif // FOO_HPP
テストコード
fooTest.hpp
テストコードの実体。
#include <cppunit/TestCase.h> #include <cppunit/extensions/HelperMacros.h> #include <cppunit/ui/text/TestRunner.h> #include "foo.hpp" class fooTest: public CppUnit::TestFixture { CPPUNIT_TEST_SUITE ( fooTest ); CPPUNIT_TEST ( test_add ); CPPUNIT_TEST_SUITE_END (); private: foo *f; public: void setUp () { f = new foo (); } void tearDown () { delete f; } void test_add () { CPPUNIT_ASSERT ( f->add(1,2) == 3 ); } };
fooMain.cpp
#include "fooTest.hpp" int main(int argc, char *argv[]) { CppUnit::TextUi::TestRunner runner; runner.addTest( fooTest::suite() ); runner.run(); return 0; }
コンパイル
g++ -I. `cppunit-config --cflags` `cppunit-config --libs` fooMain.cpp
実行例
% ./a.out . OK (1 tests)