软件工程学习笔记第十二节------白盒测试

学习目的

掌握白盒测试覆盖准则:语句覆盖、判定覆盖、条件覆盖、判定条件覆盖的标准,能使用基本路径测试法进行单元测试

学习内容

1.网课:白盒测试方法

学习产出

一、测试覆盖标准

作用:衡量软件测试覆盖的指标

  • 测试需求:测试需求是软件制品的一个特定元素,测试用例必须满足或覆盖这个特定元素
  • 覆盖标准:一个覆盖标准是一条规则,或者是将测试需求施加在一个测试集上的一组规则
  • 测试覆盖:给定一个覆盖标准C和相关测试需求集合TR,欲使一个测试集合T满足C,当且仅当对于测试需求集合TR中的每一条测试需求tr,在T中至少存在一个测试t可以满足tr
  • 覆盖程度:给定一个测试需求集合TR和一个测试集合T,覆盖程度就是T满足的测试需求数占TR总数的比例

选择覆盖标准的原则

  • 处理测试需求的难易程度
  • 生成测试的难易程度
  • 用测试发现缺陷的能力

二、白盒测试技术

概念:将测试对象看作是一个透明的盒子,允许测试人员利用程序内部的逻辑结构以及有关信息,设计或选择测试用例,对成勋所有的逻辑路径进行测试。

(一)控制流图

概念:一个过程或程序的抽象表示

基本符号:

  • 矩形:连续的顺序计算(基本块)
  • 节点:语句或语句的一部分,边表示语句的控制流

白盒测试步骤

(二)代码覆盖标准

概念:描述代码被测试的比例和程度,通过代码覆盖率可以得知哪些代码没有被覆盖,从而进一步补足测试用例

  • 语句覆盖:程序中每个可执行语句至少被执行一次(最弱的逻辑覆盖准则)
  • 判断覆盖:程序中每个判断的取真和取假分支至少经历一次,即判断真假值均被满足(弱的逻辑覆盖)
  • 条件覆盖:每个判断中每个条件的可能取值至少满足一次
  • 判断条件覆盖:判断中所有的条件的可能取值至少执行一次,且所有判断的可能结果至少执行一次(没有考虑条件组合的情况)
  • 条件组合覆盖:判断中每个条件的所有可能取值组合至少执行一次,并且每个判断本身的结果也至少执行一次
  • 路径覆盖:覆盖程序中所有可能执行的路径

(三)基本路径测试

概念:在控制流程图的基础上,通过分析控制构造的环路复杂性,导出基本可执行路径集合,从而设计测试用例的方法

1.循环测试

目的:检查循环结构的有效性

类型:

  • 简单循环
  • 嵌套循环:从最内层循环开始,所有外层循环次数设为最小值,从内向外测试
  • 串接循环:独立循环:按照简单循环处理。依赖性循环:采用嵌套循环的测试方式
  • 非结构循环(Z路径覆盖下的循环测试):循环简化为只考虑循环1次或0次。

三、总结反思

目前我们的软件基本已经成型,部分非核心用例还在编写中,这个白盒测试方法给了我们很好的方法去测试我们已经写好的相关用例,使得软件在开发过程中能够好好自查,减少了软件编写过程中可能存在的错误。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值