安装
- 将cppunit的include拷贝到你的include目录下;
- 编译cppunit, cppunit_dll, 最后应该包含4个.lib, 两个.dll
- 将lib文件拷贝到你的lib目录下
- 将dll文件拷贝到你的bin目录下,这个目录应该在环境变量PATH中。
- 如果使用MFC进行GUI的testrunner,还需要编译testrunner项目,然后
- 将对应的4个lib文件拷贝到你的lib目录
- 将对应的4个dll文件拷贝到你的bin目录下
- 安装 AddingUnitTestMethod.dsm 到你的 msdev 6.0 。AddingUnitTestMethod.dsm 从AddingUnitTestMethod.zip下载。我修改了一下,添加了一个addSuiteMethod的方法。
基于GUI的测试
- 新建一个基于dialog的项目
- 插入你要测试的类或方法的源文件。
- 修改App类中的Instance方法
- 添加下列头文件
- #include <cppunit/ui/mfc/TestRunner.h>
- #include <cppunit/extensions/TestFactoryRegistry.h>
- #include "xxxSuite.h"
- 替换
- CCPlusTestDlg dlg;
- m_pMainWnd = &dlg;
- int nResponse = dlg.DoModal();
- if (nResponse == IDOK) {
- // TODO: Place code here to handle when the dialog is
- // dismissed with OK
- } else if (nResponse == IDCANCEL) {
- // TODO: Place code here to handle when the dialog is
- // dismissed with Cancel
- }
- 为
- CppUnit::MfcUi::TestRunner runner;
- runner.addTest(xxxSuite::suite()); //添加测试
- runner.run(); //show UI
- 修改Project Settings
- Project /setting/ (C/C++) / C++ Language / RTTI 选中
- 添加testrunner.lib cppunit.lib
- 确认项目时使用/MD or /MDd边
- 使用宏 AddingUnitTestMethod.dsm / addSuilt method 增加 test Suite
- 使用宏 AddingUnitTestMethod.dsm / addClass method 增加 test class.
- 查找xxxSuite修改成为对应的Suite名称
- 在你的test class中增加测试方法,原型必须是 void* ()
- 在class view中点击该方法,到达该方法cpp中的声明的第一行,然后使用 AddingUnitTestMethod.dsm / addTestMethod 添加测试方法声明。
- 编写测试代码,添加 CPPUNIT_ASSERT_EQUAL()等测试宏
- 编译测试,或继续到添加测试类或方法。
基于TEXT
- 同基于GUI的基本相同,区别的部分是:
- 要新建一个console项目
- 在main函数中如下
- #include <cppunit/ui/Text/TestRunner.h>
- #include <cppunit/extensions/TestFactoryRegistry.h>
- #include "xxxSuite.h"
- int main()
- {
- CppUnit::TextUi::TestRunner runner;
- runner.addTest(xxxSuite::suite());
- runner.run();
- }
- 仅添加cppunit.lib即可
浙公网安备 33010602011771号