CppUnitDemoFactorial构建
来源:互联网 发布:别墅装修设计软件 编辑:程序博客网 时间:2024/06/09 23:16
CppUnitDemoFactorial构建步骤
一、 CppUnit的安装。
主要的文件夹有:
doc:CppUnit的说明文档。另外,代码的根目录,还有三个说明文档,分别是INSTALL,INSTALL-unix,INSTALL-WIN32.txt;
examples:CpppUnit提供的例子,也是对CppUnit自身的测试,通过它可以学习如何使用CppUnit测试框架进行开发;
include:CppUnit头文件;
src:CppUnit源代码目录;
config:配置文件;
contrib:contribution,其他人贡献的外围代码;
lib:存放编译好的库;
src:源文件,以及编译库的project等;
二、
在src/目录下,将CppUnitLibraries.dsw工程文件用vc 打开。执行build/batch build,只选win32 Debug, 不要选unicode,生成的库文件将被拷贝到lib目录下。 编译通过以后,在lib/目录下,会生成若干lib,和dll文件,都以cppunit开头.cppunitd表示debug版, cppunit表示release版。
CppUnit为我们提供了两套框架库,一个为静态的lib,一个为动态的dll。cppunitproject:静态lib;cppunit_dllproject:动态dll和lib。在开发中我们可以根据实际情况作出选择。
你也可以根据需要选择所需的项目进行编译,其中项目cppunit为静态库,cppunit_dll为动态库,生成的库文件为:
· cppunit.lib:静态库release版;
· cppunitd.lib:静态库debug版;
· cppunit_dll.lib:动态库release版;
· cppunitd_dll.lib:动态库debug版;
·
· 设置头文件和库文件路径,选择Tools/Options/Directories,在Includefiles和Library files中分别添加文件所在的路径,Save Workspace。
·
·
·
·
二、初识CppUnit测试环境
· 进入example文件夹,用VC打开examples.dsw。
· 将CppUnitTestApp工程设为ActiveProject(Win32 Debug),编译后运行,是基于GUI方式进行单元测试TestRunner的界面。
·
·
·
· 将CppUnitTestMain工程设置为ActiveProject(Win32 Debug),编译并运行,是基于文本方式的单元测试环境。
·
·
· 将HostApp工程设置为Active Project(Win32Debug),编译运行。
·
·
三、CppUnitDemoFactorial构建步骤
1、新建一个基于对话框的工程CppUnitDemoFactorial,可编译运行。
2、设置工程属性:Project -> Settings-> C++ -> C++ Language -> Enable RTTI。
3、设置工程属性:Project-> Settings -> Link -> object/library Modules ->
在左上角选择Win32 Debug,填入:cppunitd.lib testrunnerd.lib。
在左上角选择Win32 Release,填入:cppunit.libtestrunner.lib。
注意:工程属性设置完毕后,要Save Workspace。可编译运行。
4、将Factorial.cpp和Factorial.h添加至当前的工程中,编译会出现以下错误:
factorial.cpp(15) : fatal error C1010: unexpected end offile while looking for precompiled header directive
设置工程属性:Project -> Settings -> C++ -> Precompiled Headers ->Not using precompiled headers。
工程属性设置完毕后,要Save Workspace。可编译运行。
5、新建类:CFactorialTestCase,派生于CppUnit::TestCase。
6、添加成员函数:voidfactorialTest()。
7、添加函数体:
CPPUNIT_ASSERT_EQUAL(0,Factorial(-5));
CPPUNIT_ASSERT_EQUAL(1,Factorial(0));
CPPUNIT_ASSERT_EQUAL(6,Factorial(3));
8、在CFactorialTestCase类的定义头文件中,添加:
CPPUNIT_TEST_SUITE(CFactorialTestCase);
CPPUNIT_TEST(factorialTest);
CPPUNIT_TEST_SUITE_END();
9、在FactorialTestCase.h中,添加头文件:
#include <cppunit/TestCase.h>
#include<CppUnit/extensions/HelperMacros.h>
#include "Factorial.h"
10、在FactorialTestCase.cpp中,添加:
CPPUNIT_TEST_SUITE_REGISTRATION(CFactorialTestCase);
11、在CppUnitDemoFactorial.cpp中添加:
CppUnit::MfcUi::TestRunner runner;
runner.addTest(CppUnit::TestFactoryRegistry::getRegistry().makeTest() );
runner.run();
return TRUE;
12、在CppUnitDemoFactorial.cpp中添加:
#include<cppunit/ui/mfc/TestRunner.h>
#include<cppunit/extensions/TestFactoryRegistry.h>
13. 由于TestRunner.dll为我们提供了基于GUI的测试环境。为了让我们的测试程序能正确的调用它,TestRunner.dll必须位于你的测试程序的路径下。所以把/lib目录下的TestRunner.dll文件分别拷贝到UnitTestpriject的程序debug输出目录中。
14.最后,运行程序。
- CppUnitDemoFactorial构建
- CppUnitDemoFactorial构建步骤
- 构建
- 每日构建
- 每日构建
- 网站构建
- 构建James
- 自动构建
- 构建器
- 人物构建
- 场景构建
- 物品构建
- ant 构建
- Ant构建
- 邻接矩阵构建
- 网站构建
- initramfs构建
- 局域网构建
- navigator.geolocation例子
- java socket参数详解:BackLog
- vc循序渐进实现仿QQ界面(五):半透明窗体与不透明控件
- 反射(Reflection)的性能分析
- 《C++primer》 泛型算法
- CppUnitDemoFactorial构建
- Ubuntu下gcc安装及使用
- vc循序渐进实现仿QQ界面(六):异型菜单与内建滚动条自绘
- 主元素问题(判断数组是否出现主元素,O(n)时间内找出主元素,主元素出现次数)
- Loop Unrolling
- 程序员辞职申请 [职业生涯的第一份辞职书]
- Linux下重要日志文件及查看方式 资料收集
- 331Mapping the Swaps(***)题不错
- 分页读取数据记录(row_number()函数)