软件测试-1-白盒测试

本文探讨了将软件抽象为图进行白盒测试的方法,包括路径覆盖、可达性及不同覆盖准则,如顶点覆盖、边覆盖和边对覆盖。强调了测试路径的选择及其在验证软件结构和语义覆盖中的作用。同时,提到了测试准则的隐含关系和结构化覆盖在确保测试完整性中的重要性。
摘要由CSDN通过智能技术生成

白盒测试

1. 图的基本概念

  1. 本课程限制只有一个开始一个结束
  2. 如何将一个软件抽象成为一个图,然后用测试来进行覆盖,是一个思考。
  3. 源代码:控制流、需求文档:有限状态机
  4. 多个初始节点、终止节点:使用亚节点

1.1. 路径

  1. 路径长度:边的个数
    1. 单点:0
  2. 测试路径:从开始节点到结束节点的路径
  3. 无法证明一条路径不可以被任何路径覆盖到

2. 图覆盖准则

  1. 可达:
    1. 语法可达:在语法中的图可达
    2. 语义可达:测试中可达
  2. 覆盖:
    1. 测试路径经过的结点
    2. 测试路径经过的边
  3. 结构覆盖:只关心点和边
  4. 数据流覆盖:点和边上已经有一些程序信息

2.1. 测试准则

  1. TR:测试需求:描述测试路径
  2. C:测试准则
  3. 对于测试准则C的一个测试需求集合,一个测试T满足C当切仅当TR中任意的测试需求,都被大的测试TR中的一个T满足

2.2. 隐含(Subsume)

  1. C1隐含C2:满足C1一定满足C2
  2. 一个准则隐含了另一个准则,并不意味着纠错能力更强

2.3. 结构化覆盖

  1. 边覆盖:覆盖小于等于1的子路径->问题

2.3.1. 顶点覆盖(VC)

  1. 能够覆盖所有可达顶点

2.3.2. 边覆盖(EC)

  1. 每一个可达边都被测试路径覆盖
  2. EC一定VC,但是VC不一定EC

2.3.3. 边对覆盖(EPC)

  1. 覆盖相邻的边

2.3.4. N路径覆盖(通用)

  1. N = 0:VC
  2. N = 1:EC
  3. N = 2:EPC
  4. N = 无穷:CPC
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值