CppUnit是一个很好的单元测试框架,它可以帮助我们组织针对C/C++的测试代码,让我们把精力放在编写测试代码上。根据自己在工作中的使用情况。我根据自己的使用过程,在本文中记录了如何在Windows和Linux/Unix上安装配置CppUnit。
Winsows(选择开发环境为MS Visual C++ 6.0)
需要如下五个步骤:
一
下载CppUnit的介质(http://sourceforge.net/projects/cppunit)。
二
编译、安装CppUnit库。
在VC中打开CPPUNITHOME/src/CppUnitLibraries.dsw,选择“Build | Batch Build...”,选中所有的项目,点击build按钮。在CPPUNITHOME/lib/下生成所需要的所有库文件。
*CPPUNITHOME是CppUnit在你磁盘上的目录。下同。
三
在Visual C++中进行设置。
告诉VC在哪里能找到CppUnit中的程序文件和库文件:打开“Tools | Options...”,切换到'Directories'标签页,选择'include files',添加CPPUNITHOME/include/;切换到'libraries files'标签页,添加CPPUNITHOME/lib/;切换到'source files'标签页,添加CPPUNITHOME/src/cppunit/,保存。
四
在测试代码中进行设置。
在VC中打开你写的测试程序,启动Project Settings对话框,切换到'C++'标签页,选择'Code generation'项,对于release版,选择'Multithreaded DLL',对于Debug版,选择'Debug Multithreaded DLL'。同样是在这个标签页,选择'C++ langage'项,选择All Configurations,选择'enable Run-Time Type Information (RTTI)'。
切换到'Link'标签页,在'Object/library modules'中添入需要的lib文件cppunitX.lib (debug模式为cppunitd.lib, release 模式为cppunit.lib )和testrunnerX.lib(debug模式为testrunnerd.lib, release 模式为testrunner.lib,debug Unicode模式为testrunnerud.lib, release Unicode模式为testrunneru.lib)
五
添加系统路径。
为使测试程序在运行时能找到CppUnit提供的dll,我们在环境变量中指出CppUnit提供的dll的路径:在我的电脑中,打开环境变量,编辑系统变量中的path变量,向其中添加CPPUNITHOME\lib,从新启动计算机,使设置生效。
OK,可以在你的测试代码中,使用CppUnit为你提供的功能了!
RedHat Linux(其他Linux/UNIX类似,选择的编译器为gcc)
需要如下三个步骤:
一
同样的,下载CppUnit的介质并拷贝到你的操作系统中。
二
进入CppUnit介质的目录,依次执行:
./configure
make
make install
生成库文件。
三
将CppUnit生成的动态库文件所在的路径(默认是:/usr/local/lib)添加到/etc/ld.so.conf文件里,然后运行ldconfig。
OK,全部完成了!在编译连接程序时,使用-lcppunit,如g++ -lcppunit 1.cpp 2.cpp 3.cpp。
关于具体如何使用CppUnit来编写测试代码,你可以参考这篇文章http://www-128.ibm.com/developerworks/cn/linux/l-cppunit/
文章在IBM的developerworks网站上,作者是李群。我在第一次使用CppUnit时,向他请教过问题,他热情的给于了帮助。