编译cppunit
前言
在开始分析cppunit的源代码之前,我们先要做编译cppunit的工作。
源代码的组织
既然是cppunit源代剖析,当然首先要得到cppunit的源代码。因为cppunit是开源的,得到源代码是很容易的事情,可以从cppunit的 官方网站(www.cppunit.com)自由下载。截止到2009年1月为止,cppunit的最新版本是1.12.0,本书就以这个版本为我们的剖 析对象。
下载了cppunit的源代码压缩包并解压后,我们可以看到如图所示的目录结构:
- config:该目录下包含了一些配置相关的文件,在Windows平台下意义不大
- contrib:该目录下包含3个子目录bc5,msvc,xml-xsl,就是一些分发后或许有用的小工具,在msvc目录下是一个VBA脚本文件
- doc:该目录下是cppunit的一些文档,不过实在是没什么可看的
- examples:该目录下是cppunit的示例,这可是一个好东西
- include:该目录下是cppunit源代码的头文件
- lib:该目录下是cppunit编译后输出的lib文件
- src:该目录下是cppunit源代码的cpp文件
Windows环境下编译cppunit
直接用VC6打开examples目录下的examples.dsw,得到如图所示的工程:
- ClockerPlugIn:这个工程是一个VC的插件,我们在这里先不理会这些插件工程
- cppunit:这个工程是cppunit的静态链接库
- cppunit_dll:这个工程是cppunit的动态链接库
- CppUnitTestApp:这个工程是测试cppunit本身的功能的,有MFC界面
- CppUnitTestMain:这个工程是测试cppunit本身的功能的,控制台界面
- CppUnitTestPlugIn:
- DllPlugInTester:
- DllPlugInTesterTest:
- DumperPlugIn:
- hierarchy:这个工程是一个演示工程,演示测试包的继承
- HostApp:这个工程是一个演示工程,演示带MFC界面的cppunit的使用
- money:这个工程是一个演示工程,
- simple:这个工程是一个演示工程,演示cppunit最简单的使用方式,控制台界面
- simple_plugin:
- TestPlugInRunner:
- TestRunner:这个工程是一个动态链接库,功能是让cppunit支持MFC界面
在编译代码之前先在VC6中设置一下include路径和src路径:
要阅读源代码,先依次编译cppunit_dll,simple两个工程就可以了,如果想知道cppunit是如何支持MFC界面的,再依次编译TestRunner,HostApp。
编译完成后,执行simple,出现下面的界面,这就算大功告成了: