如何创建第一个cppunit测试项目?实践出真知!

来源:互联网 发布:球藻在淘宝哪家 编辑:程序博客网 时间:2024/04/30 13:31

创建第一个CPPUNIT测试项目

 

 查阅了几十篇网文,经过了十多次失败,终于编译成功了。在这个过程中,深切的体会到网络的文章大多数都是语焉不详,或不够完整。有的甚至会引导你走些弯路。

在此记录下如何成功创建第一个cppunit项目,为所有cppunit的新来者提供参考。

一准备CPPUNIT的开发库

1.     到http://sourceforge.net/projects/cppunit/下载CppUnit测试框架的源代码, 解压文件(解压后位于:E:\自动化测试\cppunit-1.10.2),进入src文件夹,打开CppUnitLibraries.dsw.

2.     右键单击解决方案名称“CppUnitLibraries”,选择“重新生成解决方案”: 编译,输出位置为lib文件夹。

3.     在VC的工具-选项-项目和解决方案-VC++目录:

“包含文件”——增加“E:\自动化测试\cppunit-1.10.2\include”;

“库文件”——增加“E:\自动化测试\cppunit-1.10.2\lib

4.     修改path环境变量,增加“E:\自动化测试\cppunit-1.10.2\lib

 

二创建第一个基于CPPUNIT的测试项目“cppunit3”

1. 新建-项目-Visual C++-Win32-Win32控制台应用程序:

   输入解决方案名称:cppunit3

   位置:E:\自动化测试\cppunit

 

2. 在cppunit3.cpp中做以下修改:

 

   1)在main函数前增加以下代码:

  #include <cppunit/TestCase.h>

#include <cppunit/TestResult.h>

#include <cppunit/TestResultCollector.h>

#include <cppunit/TextOutputter.h> 

 

class SimpleTest : public CppUnit::TestCase

{

public:

    void runTest() // 重载测试方法

     {

        int i = 1;

         CPPUNIT_ASSERT_EQUAL(0, i);

     }

};

 

2)main的函数主体内容修改为:

       CppUnit::TestResult r;

     CppUnit::TestResultCollector rc;

     r.addListener(&rc); // 准备好结果收集器

 

     SimpleTest t;

     t.run(&r); // 运行测试用例

 

     CppUnit::TextOutputter o(&rc, std::cout);

     o.write(); // 将结果输出

 

    return 0;

 

三编译(F7

   编译时,出现“无法解析的外部符号”致命错误,解决办法

1.项目(Project)->属性(Properties)->配置属性(Configuration Properties)-> C/C++ -> 代码生成(Code Generation):

基本运行时检测(Basic Runtime Check)改为默认(Default);

缓冲区安全检测(Buffer Security Check)改为否(No);

2. 项目(Project)->属性(Properties)->配置属性(Configuration Properties)-> 连接器-> 输入:

附加依赖项:cppunitd.lib

 

编译中,还可能出现“无法识别的外部符合”致命错误,解决办法是将拷贝过去的代码的空格全部删除。原因是有的空格是全角格式,不能识别。

 

编译通过。

 

四运行:开始执行(不调试)

 

界面上出现

 !!!FAILURES!!!
Test Results:
Run: 1 Failures: 1 Errors: 0

1) test: (F) line: 18 E:\CppUnitExamples\SimpleTest.cpp
equality assertion failed
- Expected: 1
- Actual : 0

 

与示例程序一致,项目调试成功!

原创粉丝点击