黑盒测试:

黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用,在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数锯而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。

  • “黑盒”法着眼于程序外部结构、不考虑内部逻辑结构、针对软件界面和软件功能进行测试。
  • “黑盒”法是穷举输入测试,只有把所有可能的输入都作为测试情况使用,才能以这种方法查出程序中所有的错误。
  • 实际上测试情况有无穷多个,因此不仅要测试所有合法的输入,而且还要对那些不合法但是可能的输入进行测试。

常用的黑盒测试方法有:等价类划分法;边界值分析法;因果图法;场景法;正交实验设计法;判定表驱动分析法;错误推测法;功能图分析法。

白盒测试:

白盒测试也称为结构测试或逻辑驱动测试,是针对被测单元内部是如何进行工作的测试。它根据程序的控制结构设计测试用例,主要用于软件或程序验证。

  • 白盒测试法检查程序内部逻辑结构,对所有的逻辑路径进行测试,是一种穷举路径的测试方法,但即使每条路径都测试过了,但仍然有可能存在错误。
  • 因为:穷举路径测试无法检查出程序本身是否违反了设计规范,即程序是否是一个错误的程序;
  • 穷举路径测试不可能检查出程序因为遗漏路径而出错;
  • 穷举路径测试发现不了一些与数据相关的错误。

白盒测试需要遵循的原则有:

  • 1. 保证一个模块中的所有独立路径至少被测试一次;
  • 2. 所有逻辑值均需要测试真(true)和假(false);两种情况;
  • 3. 检查程序的内部数据结构,保证其结构的有效性;
  • 4. 在上下边界及可操作范围内运行所有循环。

常用白盒测试方法

静态测试:不用运行程序的测试,包括代码检查、静态结构分析、代码质量度量、文档测试等等,它可以由人工进行,充分发挥人的逻辑思维优势,也可以借助软件工具(Fxcop)自动进行。

动态测试:需要执行代码,通过运行程序找到问题,包括功能确认与接口测试、覆盖率分析、性能分析、内存分析等。

白盒测试中的逻辑覆盖包括语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖。

六种覆盖标准发现错误的能力呈由弱到强的变化:

  • 1.语句覆盖每条语句至少执行一次。
  • 2.判定覆盖每个判定的每个分支至少执行一次。
  • 3.条件覆盖每个判定的每个条件应取到各种可能的值。
  • 4.判定/条件覆盖同时满足判定覆盖条件覆盖。
  • 5.条件组合覆盖每个判定中各条件的每一种组合至少出现一次。
  • 6.路径覆盖使程序中每一条可能的路径至少执行一次。

软件测试之黑盒、白盒的测试方法?相关推荐

  1. 软件测试黑盒用例文档,软件测试有关黑盒白盒的软件测试.doc

    <软件测试有关黑盒白盒的软件测试.doc>由会员分享,提供在线免费全文阅读可下载,此文档格式为doc,更多相关<软件测试有关黑盒白盒的软件测试.doc>文档请在天天文库搜索. ...

  2. 【测试】软件测试之黑盒、白盒、灰盒测试

      黑盒测试: 不关心软件内部的逻辑,是关心输入和输出是否达到预期效果,相当把测试的软件看成一个只有输入和输出的黑盒子.   黑盒测试设计测试用例的方法:等价类.边界值.因果图法.正交法.场景法和错误 ...

  3. 测试知识之:黑盒白盒和灰盒测试

    黑盒测试:黑盒测试也称功能测试,它是在已知产品所应具有的功能上,通过测试来检测是否每个功能是否能够按照需求规格说明书的规定正常使用.我们通过程序的接口进行测试,看程序能否适当的接收输入数据而产生正确的 ...

  4. 软件测试(黑盒白盒)

    软件=程序+数据库+文档+服务 软件测试: 使用人工或自动手段来运行或测试某个系统的过程,目的在于检验其是否满足规定的需要,或是弄清楚预期结果与实际结果之间的差别 软件测试目的:以最小的人力物力和时间 ...

  5. 软件测试 | 白盒的测试方法

    白盒测试又称为结构测试.透明盒测试.逻辑驱动测试或基于代码的测试.白盒测试是一种测试用例设计方法.盒子指的是被测试的软件,白盒指的是盒子是可视的,即清楚盒子内部的东西以及里面是如何运作的.白盒法在全面 ...

  6. 拎清黑盒白盒,告别混乱失控的生活

    用手机的相机照相,你不需要了解摄像头.闪光灯.图像处理,只要调用一个 API 就可以完成拍摄一张照片的任务. 用 Qt 的按钮响应用户鼠标,你只需要连接到 clicked 槽,用户点击按钮,你就可以响 ...

  7. 软件测试:黑盒白盒与动态静态之间有必然联系吗

    区分黑白盒:看有没有查看源码 区分动静态:看有没有运行程序 情况 类型 运行程序,只看输入输出 动态黑盒 运行程序,分析代码结构 动态白盒 不运行程序,只查看界面 静态黑盒 不运行程序,查看代码 静态 ...

  8. white/black-box attack(黑盒白盒攻击基础)

    基本概念 攻击方法分类标准: 假正性攻击(false positive)与伪负性攻击(false negative) 假正性攻击:原本是错误的但被被攻击模型识别为正例的攻击(eg: 一张人类不可识别的 ...

  9. 软件测试基础知识 - 说一说黑盒与白盒的测试方法

    分享一个大牛的人工智能教程.零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请点击http://www.captainbed.net 黑盒测试 黑盒测试也称功能测试或数据驱动测试,它是在 ...

  10. 软件测试之黑盒测试方法介绍及测试用例练习

    一.因果图法 1. 概念 因果图是一种逻辑图,表示:恒等.与.或.非 当输入有很多时,不同输入的组合对应不同的输出,用因果图来分析不同输入组合和不同输出组合之间的关系 恒等:在恒等关系中,要求程序有1 ...

最新文章

  1. 5 门可能衰落的编程语言
  2. 擦掉纹身的AI火了:再现无暇皮肤,网友却发现“伏地魔” | Reddit热议
  3. 【NLP】NLP 语义匹配:经典前沿方案整理
  4. JAVA比较文件是否相同
  5. Oracle增量跟新
  6. 热敏电阻、RTD、热电偶的原理和特性
  7. iOS底层探索(十二)类的加载(中)
  8. mysql的填充因子_为索引指定填充因子
  9. Oracle数据库的锁类型
  10. 【重要公告】包头市新型冠状病毒感染肺炎防控工作指挥部公告(2022年第4、5、6、7号)
  11. 用tig来查看git log
  12. Ajax库-认识服务器,URL地址,axios基本用法,响应状态码,业务状态码,接口测试工具
  13. 单核CPU与多核CPU的区别
  14. pc端 移动端适配rem插件方式
  15. LayUI时间线优化
  16. IKEv2的认证数据生成过程
  17. AutoCAD 2010中文版从入门与精通视频教程
  18. scala字符串切割截取split
  19. Python基础知识:3、操作列表
  20. java中的properJavaRDP实现远程桌面连接windows主机

热门文章

  1. web前端之HTML常用标签
  2. 计算机 随机分组的方法,临床试验中的随机分组方法.pdf
  3. 【人工智能】“深度学习”这十年:52篇顶级论文带你走完人工智能之路
  4. HBase2.4.10 踩坑笔记
  5. 数字电路:边沿触发的D触发器简析
  6. 数列极限的性质与判定
  7. 看似落魄的灵魂登场却如此隆重,风 吹散了平庸 爱漫延没有尽头
  8. 分布式数据库笔记 —— 数据一致性模型
  9. 深度内幕丨揭秘积分墙最新反作弊
  10. android 时钟动态图标,神奇的Android动态时钟/时间UI界面