项目测试基础:白盒测试相关知识笔记

举报
IT技术分享社区 发表于 2023/01/16 22:33:05 2023/01/16
【摘要】 ​        ​编辑       1、白盒测试概念白盒测试又称为结构测试,主要是根据程序的内部结构和逻辑来设计测试用例,然后对程序的路径和过程进行测试,检查是否满足设计的需要。2、白盒测试常用的技术介绍白盒测试常用的技术有逻辑覆盖、循环覆盖、基本路径测试。2.1 逻辑覆盖逻辑覆盖考察用测试数据运行被检测程序时,对程序逻辑的覆盖程度。常用的逻辑覆盖标准语句:判定覆盖、条件覆盖、判定/条件覆...

        编辑       

1、白盒测试概念

白盒测试又称为结构测试,主要是根据程序的内部结构和逻辑来设计测试用例,然后对程序的路径和过程进行测试,检查是否满足设计的需要。

2、白盒测试常用的技术介绍

白盒测试常用的技术有逻辑覆盖、循环覆盖、基本路径测试。

2.1 逻辑覆盖

逻辑覆盖考察用测试数据运行被检测程序时,对程序逻辑的覆盖程度。常用的逻辑覆盖标准语句:判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖、路径覆盖。

  • 语句覆盖:主要是指选择足够的测试数据,使得被测试程序中每条语句至少执行一次。一般情况下语句覆盖对程序执行逻辑覆盖率很低,属于弱逻辑覆盖。

  • 判定覆盖:主要是指设计足够的测试用例,,使得程序中每个判定表达式至少获得一次true或false。判断覆盖也成为分支覆盖。

  • 条件覆盖:条件覆盖是指构造一组测试用例,使得每一个判定语句中每个逻辑条件的各种可能的值,至少满足一次。

  • 判定/条件覆盖:主要是指设定足够的测试用例,使得判定语句中每个条件的所有可能取值,至少出现一次,,并且每个判定本身的判断结果至少也出现一次。

  • 条件组合覆盖:主要是指设计足够的用例,使得每个判定条件的各种可能的组合都至少出现一次。满足条件组合覆盖的一定满足判定覆盖、条件覆盖、判定/条件覆盖。

  • 路径覆盖:主要是指覆盖被测试程序中所有可能的路径。

2.2 循环覆盖

循环覆盖就是指执行足够的测试用例,使得循环中的每个条件都得到验证。

2.3 基本路径测试

基本路径测试是在程序控制流图的基础上,通过分析控制流图的环路复杂性,导出基本可执行路径集合,从而设计相应的测试用例。设计出的测试用例要保证在测试中程序的每一条独立路径都执行过。

3、白盒测试的原则

  • 程序模块中所有独立路径至少执行一次

  • 在所有逻辑判断中,取trueh和false的两种情况至少都执行一次。

  • 每个循环都应在边界条件和一般条件下各执行一次。

  • 测试程序内部数据结构的有效性

4、白盒测试和黑盒测试优缺点

测试类型

优点

缺点

白盒测试

可以帮助软件测试人员增大代码的覆盖率。 提升代码的质量,发现代码中隐藏的问题

1、程序运行会有很多不同的路径,不可能测试所有的运行路径

2、测试基于代码,只能测试开发人员做的对不对,而不能知道设计是否正确,可能会漏掉一些功能需求

3、系统庞大时,测试开销会非常大。

黑盒测试

1、比较简单,不需要了解程序的内部的代码及实现

2、与软件的内部实现无关

3、从用户的角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题

4、基于软件开发文档,所以也能知道软件实现了文档中的哪些功能

5、在做软件自动化测试时较为方便


1、不可能覆盖所有的代码, 覆盖率较低,一般只能达到总代码量的30%

2、自动化测试的复用性较低。



【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。