软件测试基本方法(二)之白盒测试

白盒测试

概念:按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。


分类:白盒测试是基于覆盖的测试,尽可能覆盖程序的结构特性和逻辑路径,所以其具体方法有逻辑覆盖、循环覆盖、基本路径覆盖。逻辑覆盖又可进一步分为语句覆盖、判定(分支)覆盖、条件覆盖、判定-条件覆盖、条件组合覆盖等。白盒测试主要用于单元测试(我们需要了解程序源码和结构,而且基于输入输出,适合单元模块)。下面重点介绍常用的几种白盒测试方法。


语句覆盖:

定义:只要求覆盖到所有可执行语句(每个可执行语句至少运行一次),不关注判断运算,确保可执行语句处没有错误。


例子:



按照白盒,我们只需覆盖到所有可执行语句即可,而为此我们只需用测试用例(X=1,Y=4,Z=9)。这样三句话都会打印出来。但如果编码时将X=1 AND Y>3错误写成X=1 OR Y>3,虽然我们的测试用例可以覆盖到所有可执行语句,而且证明可执行语句无误,但因此我们的密码系统面临巨大风险,Y只要大于3就能攻破第一道防线。而我们对此浑然不知。所以语句覆盖不能满足我们的需求(有人说它是最弱的逻辑覆盖准则)。


判定(分支)覆盖:

定义:每个判断的取真分支和取假分支至少经历一次。弥补语句覆盖对判断逻辑的不足。


例子:同上。

  • (X=1,Y=4,Z=9)—— 通过路径T->T
  • (X=0,Y=4,Z=0)—— 通过路径F->F
上面两个测试用例,将两个判断条件的真假值都遍历了,
  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值