WEB开发网
开发学院软件开发VC 如何使用CppUnit进行单元测试 阅读

如何使用CppUnit进行单元测试

 2007-06-14 21:33:18 来源:WEB开发网   
核心提示: 假定我们要实现一个类,类名暂且取做CPlus,如何使用CppUnit进行单元测试(6),它的功能主要是实现两个数相加(多简单的一个类啊,这也要测试吗?不要紧,如下图所示设置:由于CppUnit所用的动态运行期库均为多线程动态库,因此你的单元测试程序也得使用相应设置,我们只是了解怎样加入测试

假定我们要实现一个类,类名暂且取做CPlus,它的功能主要是实现两个数相加(多简单的一个类啊,这也要测试吗?不要紧,我们只是了解怎样加入测试代码来测试它就行了,所以越简单越好)。 假定这个类要实现的相加的方法是:

int Add(int nNum1, int nNum2);

OK,那我们先来写测试这个方法的代码吧。TDD 可是先写测试代码,后写产品代码(CPlus)的哦!先写的测试代码往往是不能运行或编译的,我们的目标是在写好测试代码后写产品代码,使之编译通过,然后再进行重构。这就是Kent Beck说的“red/green/refactor”。所以,上面的类名和方法应该还只是在你的心里,还只是你的idea而已。

根据测试驱动的原理,我们需要先建立一个单元测试框架。我们在VC中为测试代码建立一个project。通常,测试代码和被测试对象(产品代码)是处于不同的project中的。这样就不会让你的产品代码被测试代码所“污染 ”。

由于在CppUnit下, 可以选择控制台方式和UI方式两种表现方案,我们选择UI方式。在本例中,我们将建立一个基于GUI 方式的测试环境。因此我们建立一个基于对话框的Project。假设名为UnitTest。

建立了UnitTest project之后,我们首先配置这个工程。

首先在project中打开RTTI开关,具体位置在菜单Project/Settings/C++/C++ Language。如下图所示设置:

由于CppUnit所用的动态运行期库均为多线程动态库,因此你的单元测试程序也得使用相应设置,否则会发生冲突。于是我们在Project/Settings/C++/Code Generation中进行如下设置:

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:如何 使用 CppUnit

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接