首页 > 软件测试/ 正文
浅谈白盒测试中桩函数的灵活应用
2012-09-18 16:50:14 ℃首先我们得了解下什么是桩函数,如下有个定义,更具体可以查阅白盒测试相关文章了解。
测试桩:代替被测模块调用的子模块的实体,该实体一般为桩函数,这个测试桩就是我们所说的桩函数。那么好好的一个函数,为啥我们非得要去整一个桩函数来替代呢,那不是没事找事么?说到点子上去了,这就是我要给各位看官讲的应用了。
比如有如下被测代码(C代码,为了便于看官阅读样例代码简单了点):
//被测源码 int Myfunc() |
一、排除故障:在测试Myfunc()过程中发现问题,但不能确定是否因为Callfunc()引起时,我们使用桩函数来替代Callfunc(),桩函数的功能与Callfunc()的功能完全一致,必须得保证桩函数100%正确,这样我们就能排除是Callfunc()的问题还是Myfunc()的问题。
二、彻底替换:被测函数中所调用的函数因为进度等原因未实现,为了测试模拟一个函数来替代保证测试的正常运行,特别是在敏捷快速迭代的开发模式中应该比较经常出现。比如Callfunc()就是个空函数根本没实现什么功能,那么我们要测试Myfunc()就必须得模拟一个桩函数来达到测试目的。
三、特定目的:为了达到特定的目的替代原始函数,比如强制改变测试分支,将复杂业务简单化,而不是真实的去构造设置很多业务环境来达到条件,为了节省开支使用简单实用的办法直接替代,比如Callfunc()中一般情况下都返回88,在极端苛刻的条件下才返回小于10的值,那我们想构造这种情况就很难了,但是Myfunc()中else分支要测试啊,那怎么办,只有打桩强制使得Callfunc()的返回值小于10即可。样例如下:
#测试代码 #对Callfunc函数进行打桩 #打桩时调用被测函数 #删除桩 |
- 上一篇:初步介绍自动化测试
- 下一篇:如何测试一个印有广告的水杯?
更多郑州课工场培训机构哪家正规靠谱,郑州课工场培训学校哪家比较好,郑州课工场大学生培训机构怎么样,郑州云技术培训学校哪家好呢,郑州java大数据培训学校哪家比较靠谱,河南郑州全栈工程师培训基地在哪相关文章
- JAVA技术:代码实现验证码图片的生成
- 关于如何提高代码可测试性的一些看法
- 七嘴八舌话探索性测试
- 我的软件测试之旅:(4)并行——自动化回归测试
- 拒绝场景遗漏之精准回归(一)
- 谷歌如何做软件测试?——第六部分
- 项目管理,质量先行
- 基于审查的软件过程改进
- 软件质量管理之痛
- 探秘软件质量保证的五大法则
- 谁来保证测试工作的质量
- IT行业——轻方法与满意质量相比较
- CMMI过程我们所不得不面对的困难
- 降低软件测试后遗漏Bug的风险
- 浅谈软件可靠性工程的应用
- 同行评审那些事儿(一):评审的必要性
- 软件测试对质量负主要责任?
- 软件测试怎么学?
- CMM的动机
- 在软件发布之前如何预估残留缺陷?
- 项目质量模型——数据区间离散化问题探究
- IP地址知识
- 桌面东西多会影响电脑速度吗
- 硬盘转速是什么
- 什么是流氓软件
- 智能手机Android系统中的root知识
- 手机系统哪个好?5大智能手机系统对比
- 磁盘碎片产生原理
- 什么是系统的安全模式
- 搜索
-
- 热门标签