【软件测试学习笔记】白盒测试

文章目录

  • 一、白盒测试概述
  • 二、分类
    • 1.静态测试
    • 2.动态测试
  • 三、白盒测试原则
  • 四、白盒测试类别
  • 五、不同阶段不同侧重点
    • 1.单元测试
    • 2.集成测试
    • 3.系统测试
    • 4.验收测试
  • 六、测试覆盖率
    • 1.功能点覆盖
    • 2.结构覆盖率
  • 七、逻辑覆盖
  • 八、白盒测试优缺点
  • 白盒测试案例


一、白盒测试概述

白盒测试的对象主要是源代码,用代码内部的分支、路径、条件。使程序设计的控制结构导出测试用例。

二、分类

1.静态测试

不在计算机上实际执行所测程序,使用人工模拟技术对软件进行分析和测试

2.动态测试

需要执行代码,通过运行程序找到问题

三、白盒测试原则

1.保证一个模块中所有的路径至少被测试一次
2.所有逻辑值都要测试真和假两种情况
3.检查程序的内部数据结构是否有效
4.检查上、下边界及可操作范围内运行的所有循环

四、白盒测试类别

软件公用问题的测试
语言测试
SQL语句测试
数据类型测试
界面测试
数值对象测试
业务对象测试
数据管理对象测试

五、不同阶段不同侧重点

1.单元测试

程序语法检查
程序逻辑检查
代码检查
逻辑覆盖

2.集成测试

静态结构分析
静态质量度量
接口测试为主

3.系统测试

检验完整的软件配置项能否和系统正确连接
发现软件与系统设计文档和软件开发合同规定不符合与之矛盾的地方
验证系统是否满足了需求规格定义

4.验收测试

按照需求开发,体验该产品能否满足使用要求,有没有达到原设计水平,完成的功能水平,是否符合用户需求,达到预期目的为主。

六、测试覆盖率

1.功能点覆盖

已经实现的功能与软件需要实现的功能之间的比例关系。

2.结构覆盖率

  • 语句覆盖率
  • 分支覆盖率
  • 循环覆盖率
  • 路径覆盖率

七、逻辑覆盖

  • 语句覆盖:保证程序中的每个可执行语句至少执行一次。
  • 判定覆盖:每个判定语句获得一次真值一次假值/程序中每一个取真分支或取假分支都经历一次。
  • 条件覆盖:每个判定包含的每个条件的可能取值都至少满足一次。
  • 路径覆盖:所有可能被执行到的路径至少执行一次。
  • 条件判定组合覆盖:同时满足条件覆盖和判定覆盖。
  • 条件组合覆盖:每个判定中条件的各种组合都至少出现出一次。

八、白盒测试优缺点

优点 缺点
帮助软件测试人员增大代码覆盖率,提高代码质量,发现代码中隐藏问题 不可能测试所有的运行路径;可能会遗漏一些功能需求。

白盒测试案例

【软件测试学习笔记】白盒测试_第1张图片
1.语句覆盖:所有语句至少执行一次。语句sabcde都执行一编。

测试用例 预测结果 执行路径
x=4 ,y=2,z=0 x=3 Sabcde

2.判定覆盖:所有判定语句的取真取假都满足一次。

判定 测试用例 预测结果 执行路径
a真c假 x=1,y=3,z=0 X=0 sabce
a假c真 X=1,y=2,z=1 X=2 sacde

3.条件覆盖:每个判定里每个条件可能出现的结果至少出现一次。

a可能出现的结果 b可能出现的结果
y>1,y<=1;z=0,z≠0 y=2,y≠2;x>1,x<=1
条件 测试用例 预测结果 执行路径
y>1,y=2,z=0,x>1 x=2,y=2,z=0 x=1 sabcde
y<=1,y≠2,z≠0,x<=1 x=1,y=1,z=1 X=2 sace

4.路径覆盖:所有可能被执行到的路径至少执行一次。

执行路径 测试用例 预测结果
sabcde x = 4, y= 2, z = 0 x=3
sace x=1,y=1,z=1 x=1
sabce x=1,y=3,z=0 x=0
sacde x=1,y=2,z=1 x=2

5.条件判定组合覆盖:判定结果至少出现一次,判定中的条件可能出现的结果也至少出现一次。

判定 条件 测试用例 预测结果 执行路径
a真c假 y>1,y=2,z=0,x>1 x=2,y=2,z=0 x=1 sabcde
a假c真 y<=1,y≠2,z≠0,x<=1 x=1,y=1,z=1 x=2 sace

6.条件组合覆盖:每个判定的每个条件的可能出现的结果的所有可能的组合至少出现一次。

a可能出现的组合 b可能出现的组合
y>1,z=0 y=2,x >1
y<=1,z=0 y≠2,x >1
y>1,z≠0 y=2,x<=1
y<=1,z≠0 y≠ 2,x<=1
条件组合 测试用例 预测结果 执行路径
y>1,z=0,y=2,x>1 x=4,y=2,z=0 x=3 sabcde
y<=1,z=0,y≠2,x<=1 x=1,y=1,z=1 x=1 sace
y>1,z≠0,y=2,x<=1 x=1,y=2,z=1 x=1 sace
y<=1,z≠0,y≠2,x>1 x=2,y=1,z=1 x=3 sacde

你可能感兴趣的:(软件测试,单元测试,测试工具,功能测试)