黑盒测试:黑盒测试也称功能测试,它是在已知产品所应具有的功能上,通过测试来检测是否每个功能是否能够按照需求规格说明书的规定正常使用。我们通过程序的接口进行测试,看程序能否适当的接收输入数据而产生正确的输出信息,并且保持外部信息(如数据库或者文件)的完整性。

常见的黑盒测试方法有:等价类划分法、边界值、因果图、判定表、正交实验法和场景法。

在对一个软件进行测试时,一般最先使用的是边界值,其实有的时候在进行边界值测试用例的设计时就已经把等价类的方法应用进去了。而因果图和判定表一般是一起使用的。正交法用的比较少,只有当我们的输入值没有什么可以进行等价类判别,也没有边界值没有范围,这中情况下只有使用无限穷举的方法才能够覆盖掉。这种时候才会考虑到使用正交法,正交表来帮助我们完善测试用例的设计。当对一个复杂的业务进行测试的时候,比如电商网站的购物流程,比较复杂,就需要使用场景法

黑盒测试的优缺点

优点:

1) 比较简单,不需要了解程序的内部的代码及实现;2) 与软件的内部实现无关;3)  从用户的角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;4)  基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;5)  在做软件自动化测试时较为方便

缺点 :

1) 不可能覆盖所有的代码, 覆盖率较低,大概只能达到总代码量的30%

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

白盒测试:白盒测试又叫结构化测试,是基于代码的测试,它根据程序的控制结构设计测试用例。

常见的白盒测试的方法:分为静态测试和动态测试。静态测试是不运行测试程序,对代码或者其他项目文档进行检查、阅读和分析。动态测试需要执行代码,通过运行程序找到问题。白盒测试要保证路径覆盖逻辑覆盖,但是更多的时候是使用逻辑覆盖,它是白盒测试的主要方法。逻辑覆盖分为语句覆盖、判定覆盖、条件覆盖、判定-条件覆盖、条件组合覆盖。

白盒测试的优缺点:

优点:

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

缺点:

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

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

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

灰盒测试

灰盒测试,是介于白盒测试与黑盒测试之间的一种测试,灰盒测试多用于集成测试阶段,不仅关注输出、输入的正确性,同时也关注程序内部的情况。灰盒测试不像白盒那样详细、完整,但又比黑盒测试更关注程序的内部逻辑,常常是通过一些表征性的现象、事件、标志来判断内部的运行状态。灰盒测试除了完成黑盒测试的一些测试手段之外,还会通过codereview,日志检查,甚至通过编写代码去调用服务的接口或者函数来进行测试。

测试知识之:黑盒白盒和灰盒测试相关推荐

  1. 黑盒、白盒、灰盒测试

    黑盒.白盒.灰盒测试 1.黑盒测试关注的是被测对象整体外部特征,而不关注内部的构造细节,比如一个查询功能,只要测试这个功能是否能够完成精确查询.模糊查询等操作,而不必在意具体是怎么实现查询的. 2.白 ...

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

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

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

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

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

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

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

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

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

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

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

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

  8. 测试理论-黑盒白盒简介(二)

    黑盒测试 白盒测试 一:黑盒测试 黑盒测试是重要的测试策略之一. 黑盒又称为数据驱动的测试或输入/输出驱动的测试. 判定标准:穷举输入测试(不现实) 只能通过有限的测试用例,最大限度地提高发现问题的数 ...

  9. 黑盒白盒、压力测试(qps)

    黑盒测试 黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用.在测试地,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是 ...

最新文章

  1. 无监督机器学习中,最常见4类聚类算法总结 | 技术头条
  2. __CLASS__ get_class() get_called_class()区别
  3. Java中ClassLoader浅析.
  4. wxWidgets:键码KeyCodes
  5. 四年级打字计算机上册教案,2019四年级上信息技术教案(A)打字速度靠指法_泰山版教育.doc.docx...
  6. God of War Ascension / 战神4, 再一次迎来新导演!
  7. Deepin更换仿Mac主题(附Mac壁纸)
  8. jscpd--前端代码重复率检测
  9. 【2020年高被引学者】 方飞 卡耐基梅隆大学
  10. 如何在纯HTML的静态网页中添加一段统计网页访问量的JAVA Script代码?
  11. 路由器中的DMZ功能是什么?
  12. 安卓app服务器地址文件夹,查看安卓app的服务器地址
  13. 活久见!Linux命令行居然也可以用来查看图像?
  14. 陈飞龙 java,二、简单几步下载安装JMeter
  15. FPGA hold违例
  16. SQL去重是用DISTINCT好,还是GROUP BY好?
  17. I2CSCCB协议的快速使用
  18. 手把手教你用 wxPython 设计一个可以弹琴的计算器
  19. 如何让ChatGPT制作XMind思维导图
  20. Learning Adobe Animate CC 学习Adobe Animate CC Lynda课程中文字幕

热门文章

  1. threeJS 创建逼真海洋落日
  2. 计算机考证分几个等级
  3. Origin绘制双Y轴图的方法
  4. Eclipse简介、安装及常用快捷键
  5. 对于业务中库存超卖测试
  6. uniapp团购商城源码在哪里下载?
  7. Java基础3-循环
  8. 我是怎么薅的双十一羊毛
  9. 【语音控制ROS】PocketPhinx语音包的使用<三>
  10. UEFI 界面实例解析