Linux 下 CppUnit的安装与使用

OS :ubuntu9.04
CppUnit :cppunit-1.12.1
1、 下载、解压
     到http://sourceforge.net/projects/cppunit下载,然后复制cppunit-1.11.6.tar.gz到/usr/src;  
    运行:tar -xf cppunit-1.10.2.tar.gz 解压缩;或者在WIN下直接解压
2 、安装
进入cppunit-1.11.6目录下。依次运行下列命令
      A :./configure;  
B :make;
      C :make check;
      D:make install
3、 copy *.h 文件
    .o, .a文件已经安装到/usr/local/lib中去了,但头文件没安装到/usr/include中去
把cppunit-1.10.2的cppunit目录复制到/usr/include下
4 、导入lib
运行时要先设置环境变量LD_LIBRARY_PATH到cppunit的安装目录,也就是/usr/local/lib,命令如下:
       export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
5、 编写测试程序
testApp.cpp
#include <iostream>
 
#include <cppunit/TestRunner.h>
#include <cppunit/TestResult.h>
#include <cppunit/TestResultCollector.h>
#include <cppunit/extensions/HelperMacros.h>
#include <cppunit/BriefTestProgressListener.h>
#include <cppunit/extensions/TestFactoryRegistry.h>
 
 
class Test : public CPPUNIT_NS::TestCase
{
 CPPUNIT_TEST_SUITE(Test);
 CPPUNIT_TEST(testHelloWorld);
   CPPUNIT_TEST_SUITE_END();
 
 public:
   void setUp(void) {}
   void tearDown(void) {}
 
 protected:
   void testHelloWorld(void) { std::cout << "Hello, world!" << std::endl; }
 };
 
 CPPUNIT_TEST_SUITE_REGISTRATION(Test);
 
 int main( int argc, char **argv )
 {
   // Create the event manager and test controller
   CPPUNIT_NS::TestResult controller;
 
   // Add a listener that colllects test result
   CPPUNIT_NS::TestResultCollector result;
 controller.addListener( &result );       
 
   // Add a listener that print dots as test run.
   CPPUNIT_NS::BriefTestProgressListener progress;
   controller.addListener( &progress );     
 
   // Add the top suite to the test runner
   CPPUNIT_NS::TestRunner runner;
   runner.addTest( CPPUNIT_NS::TestFactoryRegistry::getRegistry().makeTest() );
   runner.run( controller );
 
   return result.wasSuccessful() ? 0 : 1;
 }
6 、编译,运行
   有两种方法
    (a) 链接静态库。编译命令:
      g++ -L/usr/local/lib/libcppunit.a testApp .cpp -lcppunit -ldl -o testApp
    运行:
      ./ testApp
    结果:
     
      : OK
    (b) 链接动态库。编译命令:
       g++ testApp .cpp -lcppunit -ldl -o testApp
    然后运行:
       ./ testApp
    结果:
       Test::
         : OK
7、 其他例子
在cppunit-docs-1.11.6中有文档money_example.html,该文档详细的介绍了测试、开发的过程;
转载: http://blog.csdn.net/lengxingfei/archive/2006/04/19/669659.aspx
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CppUnit是一个C++的单元测试框架,可以用来测试C++程序中的函数和类。下面是使用CppUnit进行单元测试的基本步骤: 1. 安装CppUnit:首先需要安装CppUnit库。可以从官网上下载源代码,然后编译安装,或者使用包管理器进行安装。 2. 编写测试用例:测试用例是指对一个函数或类的测试,通常包括多个测试点。测试用例需要继承自CppUnit::TestFixture类,并且需要在类中定义测试函数,每个测试函数对应一个测试点。 3. 编写测试驱动程序:测试驱动程序是指一个main函数,用于运行测试用例并输出测试结果。测试驱动程序需要使用CppUnit提供的宏来注册测试用例和测试函数。 4. 运行测试:编译测试驱动程序并运行,查看测试结果。 下面是一个简单的示例: ``` #include <cppunit/extensions/HelperMacros.h> #include <cppunit/ui/text/TestRunner.h> class MyTest : public CppUnit::TestFixture { CPPUNIT_TEST_SUITE(MyTest); CPPUNIT_TEST(testAdd); CPPUNIT_TEST(testSubtract); CPPUNIT_TEST_SUITE_END(); public: void testAdd() { int a = 1, b = 2; CPPUNIT_ASSERT_EQUAL(3, a + b); } void testSubtract() { int a = 3, b = 2; CPPUNIT_ASSERT_EQUAL(1, a - b); } }; CPPUNIT_TEST_SUITE_REGISTRATION(MyTest); int main() { CppUnit::TextUi::TestRunner runner; runner.addTest(CppUnit::TestFactoryRegistry::getRegistry().makeTest()); runner.run(); return 0; } ``` 这个示例定义了一个MyTest类,包含两个测试函数testAdd和testSubtract。在测试驱动程序中使用CPPUNIT_TEST_SUITE_REGISTRATION宏注册MyTest类,并使用CppUnit::TestFactoryRegistry::getRegistry().makeTest()函数创建测试套件。然后运行测试驱动程序即可。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值