今天,老师又布置了新的学习任务,关于白盒测试。感觉黑盒测试,我们用的比较多,白盒测试就相对陌生了。上课的时候老师虽然也进行了一定的点拨,外加我们学习了SPOC视频,但是并没有看到什么具体的项目,所以实践起来还是有一点无从下手的感觉。

白盒测试又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。白盒测试是一种测试用例设计方法,盒子指的是被测试的软件,白盒指的是盒子是可视的,你清楚盒子内部的东西以及里面是如何运作的。"白盒"法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。"白盒"法是穷举路径测试。在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。贯穿程序的独立路径数是天文数字。
采用什么方法对软件进行测试呢?常用的软件测试方法有两大类:静态测试方法和动态测试方法。其中软件的静态测试不要求在计算机上实际执行所测程序,主要以一些人工的模拟技术对软件进行分析和测试;而软件的动态测试是通过输入一组预先按照一定的测试准则构造的实例数据来动态运行程序,而达到发现程序错误的过程。在动态分析技术中,最重要的技术是路径和分支测试。下面要介绍的六种覆盖测试方法属于动态分析方法。
白盒测试的测试方法有代码检查法、静态结构分析法、静态质量度量法、逻辑覆盖法、基本路径测试法、域测试、符号测试、路径覆盖和程序变异。
白盒测试法的覆盖标准有逻辑覆盖、循环覆盖和基本路径测试。其中逻辑覆盖包括语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖。六种覆盖标准发现错误的能力呈由弱到强的变化:
1.语句覆盖每条语句至少执行一次。
2.判定覆盖每个判定的每个分支至少执行一次。
3.条件覆盖每个判定的每个条件应取到各种可能的值。
4.判定/条件覆盖同时满足判定覆盖条件覆盖。
5.条件组合覆盖每个判定中各条件的每一种组合至少出现一次。
6.路径覆盖使程序中每一条可能的路径至少执行一次。

最新文章

  1. android break 与 return 的区别
  2. Vs2012(Vs2013) 编译 64位 Qt (动态库), 并使用自编译Qt建立工程(悲催经历)。(含遗留问题)
  3. 使用javascript实现html页面直接下载网盘文件
  4. 开源软件free download manager在windows defender中报毒
  5. 项目源码--Android美图秀秀源码
  6. java多线程 join方法以及优先级方法
  7. JavaSE-管道流
  8. python安装setup.py问题
  9. bzoj1831 逆序对 (dp+树状数组)
  10. QtCreator 调试源码
  11. 欧拉函数  已经优化到o(n)
  12. web安全/渗透测试--1--web安全原则
  13. 使用ImageMagick 在图片上绘制粗斜体的中文也许是一个错误。
  14. yizhihx ubuntu config
  15. mongodb命令(1)
  16. windows宿主机ping不通Docker容器的解决办法
  17. JavaMail获取已发送邮件
  18. Java多线程下单例
  19. SpringCloud---API网关服务---Spring Cloud Zuul
  20. JSON初体验(二):Gson解析

热门文章

  1. 白夜追凶 :手 Q 图片的显示和发送逻辑
  2. 编程&blog处女篇-用C#求100以内的质数
  3. iscroll 下拉刷新,上拉加载
  4. 基于netfilter和LVM的密码窃取
  5. Java 链表常见考题总结
  6. 阿里JAVA开发手册零度的思考理解(二)
  7. 在ASP.NET Core中使用AOP来简化缓存操作
  8. form 表单处理
  9. Git(3)----Eclipse上Git插件使用技巧
  10. C#泛型集合之List