banner cpptest
首页 > C++test > C++test使用进阶介绍 -- 全面了解和学习使用C++test桩函数

C++test使用进阶介绍 -- 全面了解和学习使用C++test桩函数

2010年10月12日 浏览: 

本文源自于软件测试人专业博客,任何转载均需注明原址:http://www.mytestlife.com/post/C++test_Stub.html

本文是《C++test使用进阶介绍》系列文章,上一篇介绍了《C++test使用进阶介绍 -- 使用C++test命令行进行夜间测试》 ,本篇介绍C++test桩函数的相关概念和使用。

什么是桩函数?
桩函数是一个替代原函数的简单函数,没有实际的函数内容,返回一个简单值,桩函数将被测功能与外部依赖条件隔离。一般桩函数主要目的是:
第一、 隔离被测试代码与集成环境。隔离真实难以搭建和访问受限的真实环境,例如访问网络、数据库、硬件等;另外,隔离复杂的底层系统,采用简单函数代替;
第二、 使用桩函数,使单元测试效率更高;

如何实现桩函数?
单元测试过程中,如果碰到调用真实环境的函数,如删除文件,访问数据库等,或者被调用原函数过于复杂,此时候可使用桩函数替代原函数;

如何使用C++test实现桩函数?

C++test桩函数分成如下几类:
1. 自定义桩函数:用户自定义桩函数,自定义桩函数以"CppTest_Stub_"为前缀,如:
/* C++test user stub definition for int doSomething(int i) */
      int ::CppTest_Stub_doSomething(int i)
      {
     return i + 10;
      }

2. 安全桩函数:C++test自动生成安全桩函数,用以替换“危险”函数,如(rmdir(), remove(), rename()等)。当使用者不希望使用C++test自动生成的安全桩函数,则可以在Test Configuration窗口中,选择Execution面板,从Use stubs found in删去${cpptest:cfg_dir}/safestubs,如下:

 C++test Stub

3. 自动生成桩函数: C++test中提供现成的测试配置,用户只需点击该配置即可针对所选择源文件或者原工程自动生成桩函数;

原文链接:http://www.mytestlife.com/post/C++test_Stub.html

withdreamer C++test 桩函数