cppunit测试工具

前段时间用过CPPunit,但都是直接拿来用的,今天自己装了下,测试通过,不过也花费了很多时间。。

1、下载cppunit,可以从sourceforge上找

2、解压 tar。。。

3、安装 ./configure   make   make install

4、配置:

将cppunit-version目录下include目录的cppunit目录cp到/usr/include下

5、配置链接库:

修改/etc/ld.so.conf文件,在最后加入一行: /usr/local/lib

修改后使用ldconfig,从新加载conf文件

然后利用ldconfig -v | grep cppunit 查看是否有libcppunit库,有的话说明加载正常

6、利用cppunit进行测试:

 

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;
 }
7、编译:可以用静态库和动态库来编译:
静态库:
g++ test.cpp -L/usr/local/lib/libcppunit.a -lcppunit -ldl -o test
动态库:
g++ test.cpp -lcppunit -ldl -o test
8、运行:
./test
可以看到输出,有一个ok就表示成功了
上午折腾了很久,刚开始没有加#include <cppunit/extensions/HelperMacros.h>这个头文件,结果一直找不到CPPUNIT_TEST_SUITE()和另外两个宏的定义。。。这三个宏是在该文件中定义的

你可能感兴趣的:(manager,测试,include,测试工具)