.4. 选择MFC GUI方式搭建第二个工程
新建c++工程“MFC应用程序”并配置这个工程
? 首先,在工程中打开RTTI开关:工程属性->C/C++->语言,启动运行时类型信息选择“是”。
? 其次,由于CppUnit所用的动态运行期库均为多线程动态库,因此你的单元测试程序也得使用相应设置,否则会发生冲突。于是我们在工程属性->C/C++->代码生成,运行时库选择:针对debug和release分别设置为“多线程调试DLL”和“多线程DLL”,这里我们就选择前者好了
? 然后,link正确的lib,工程属性->链接器->输入,附加依赖项加入“cppunitd.lib testrunnerd.lib”
? 配置字符:工程属性->配置属性->常规,字符集选择“选择多字节字符”(否则会报 debug assertion failed错误)
? 添加testrunnerd.dll到工程的debug目录
? 最后加入以下文件并编译运行:
math.h和math.cpp跟第一个工程一样,<入口文件>.cpp加入
#include <cppunit/ui/mfc/TestRunner.h>
#include <cppunit/extensions/TestFactoryRegistry.h>
BOOL CGuiCppunitApp::InitInstance()方法修改成
BOOL CGuiCppunitApp::InitInstance()
{
CppUnit::MfcUi::TestRunner runner;
// 从注册的TestSuite中获取特定的TestSuite, 没有参数获取未命名的TestSuite.
CppUnit::TestFactoryRegistry ®istry =
CppUnit::TestFactoryRegistry::getRegistry("alltest");
// 添加这个TestSuite到TestRunner中
runner.addTest( registry.makeTest() );
// 运行测试
runner.run();
return true;
}
运行结果可以看到cppunit的GUI界面,Browse内可以看到加入的用例
具体cppunit写法参照参考资料
相关文章
- C++单元测试:cppunit2011-07-01 01:37:17
- CppUnit测试框架入门2010-07-03 14:41:47