• 0
  • 0
分享
  • 什么是黑盒测试?它的常用方法有哪些?——软件测试圈
  • TIMI 2022-06-22 13:59:02 字数 2083 阅读 1109 收藏 0

一:什么是黑盒测试?

黑盒测试(Black-box Testing),黑盒测试又称为“功能测试”,是将测试对象看做一个黑盒,在并不考虑软件产品的内部结构和处理过程的基础上对软件产品进行功能测试。黑盒测试注重软件产品的“功能性需求”。

二:黑盒测试常用的方法有哪些?

运用黑盒技术设计测试用例常用的方法有:

① 等价类划分

② 边界值分析

③ 因果图分析法

④ 错误推断法等

1.png

详细分析:

(一)等价类划分:

等价类的划分无非就两种情况:有效等价类、无效等价类

2.png

1.有效等价类:是指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。

利用有效等价类可检验程序是否实现了规格说明中所规定的功能需求。

2.无效等价类:与有效等价类的定义恰巧相反。

无效等价类是指对程序的规格说明是不合理的或无意义的输入数据所构成的集合。

他能检验程序在不符合规则的数据输入下,是否会有异常(无效等价类至少应该有一个,也可能有多个,视情况而定)

综上:设计测试用例时,要同时考虑这两种等价类,因为软件不仅要能接收合理的数据,也要能经受意外的数据,这样的测试才能确保软件具有更高的可靠性。

【例1】100分的试卷分数(Scores)

有效等价类:0 ≤ score ≤ 100

无效等价类1:Scores < 0

无效等价类2:Scores > 100

【例2】每个月所下发的工资只可为数字

有效等价类:输入的工资内容为数字

无效等价类1:输入的工资内容为字母

无效等价类2:输入的工资内容为汉字

无效等价类3:输入的工资内容为特殊字符

【例3】需求:用户注册时所设计的密码可以是“数字”、“字母”、及“部分特殊符号”,不能输入“空格”、“单引号”、“双引号”

有效等价类1:输入的密码全为“数字”

有效等价类2:输入的密码全为“字母”

有效等价类3:输入的密码全为“特殊符号”(除“空格”、“单引号”、“双引号”)

有效等价类4:输入的密码为“数字”和“字母”的组合

有效等价类5:输入的密码为“数字”和“特殊符号”的组合

有效等价类6:输入的密码为“字母”和“特殊符号”的组合

有效等价类7:输入的密码为“数字”和“字母”和“特殊符号”的组合

无效等价类1:输入的密码全为“空格”

无效等价类2:输入的密码全为“单引号”

无效等价类3:输入的密码全为“双引号”

无效等价类4:输入的密码为“空格”和“单引号”的组合

无效等价类5:输入的密码为“空格”和“双引号”的组合

无效等价类6:输入的密码为“空格”和“单引号”和“双引号”的组合

(二)边界值分析法

1.边界值分析法也是一种典型的黑盒测试方法,其主要的测试点 是对“输入”或“输出”的“边界”值进行测试

2.通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界

注意:

(1)边界值分析不是从某个等价类中随便挑一个作为代表,而是使这个等价类的每一个边界都要作为测试条件。

(2)边界值分析不仅考虑输入条件,还要考虑输出空间产生的测试情况

(3)边界值分析使用与等价类划分法相同的划分,只是边界值分析假定错误更多的存在于划分的边界上。因此,边界值分析法是在等价类的边界上以及两侧的情况设计测试用例。

(三)因果图分析法

1.这里我们先回顾一下前面介绍的两种黑盒测试方法:等价类划分法和边界值分析法,我们可以发现,等价类划分法和边界值分析法它们都是着重考虑输入条件,但是未考虑输入条件之间的联系、相互结合等。

2.考虑输入条件之间的相互结合可能会产生一些新的情况。但要检查输入条件的结合不是一件容易的事情,即使把所有的输入条件划分成等价类,他们之间的结合情况也相当多。因此,必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例,这就需要利用因果图分析法(逻辑模型)

利用因果图生成测试用例的基本步骤:

①分析软件规格说明描述中, 那些是原因(即输入条件或输入条件的等价类),那些是结果(即输出条件), 并给每个原因和结果赋予一个标识符。

②分析软件规格说明描述中的语义.找出原因与结果之间, 原因与原因之间对应的关系. 根据这些关系,画出因果图。

③由于语法或环境限制, 有些原因与原因之间,原因与结果之间的组合情况不不可能出现. 为表明这些特殊情况, 在因果图上用一些记号表明约束或限制条件。

④把因果图转换为判定表。

⑤把判定表的每一列拿出来作为依据,设计测试用例。

(四)错误推断法

在软件测试过程中,人们可以依靠经验和直觉推测系统中可能存在的各种错误,从而有针对性地编写检查这些错误的例子,这就是错误推测法。

基本思想:

①根据以往的测试经验和对系统内部知识的了解,列出系统中各种可能有的错误和容易发生错误的特殊情况,再根据它们来设计测试用例。

②随着在产品测试的实践中对产品的了解的加深和测试经验的丰富,使用错误推测法设计的测试用例往往非常有效。

③可以作为测试设计的一种补充手段,并且积累的经验越丰富,方法使用效率越高。


作者:时间_wys

原文链接:https://blog.csdn.net/weixin_43950588/article/details/108550652

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 职场新人对测试用例的困惑无非有以下几点:什么是测试用例,为什么要写测试用例?不知道怎么写,写了也不知道写的是否完整。一、什么是测试用例?百科的释义:测试用例是对一项特定的软件产品进行测试任务的描述,体现测试方案、方法、技术和策略。其内容包括测试目标、测试环境、输入数据、测试步骤、预期结果、测试脚本等,最终形成文档。简单地认为,测试用例是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,用于核实是否满足某个特定软件需求。二、为什么要设计测试用例?1、指导测试工作的进行测试用例可以把产品需求转换为可操作的步骤【步骤、操作、输入、输出、优先级等】,从而指导测试人员按部进行测试。2、验证产品的...
            0 0 1772
            分享
          •   据 Display Supply Chain Consultants 称,苹果即将推出的iPad Pro机型将采用"迄今为止市场上最好的 OLED 平板面板"。定于 5 月 7 日发布的OLED iPad Pro机型将采用 LTPO(一种更省电的 OLED)、120Hz ProMotion 刷新率、串联堆叠和玻璃减薄技术,从而带来"超薄、超轻显示屏",支持高亮度、更长的电池续航时间和更长的使用寿命。  与之前的传言一样,今天的报道显示 iPad Pro 机型将有 12.9 英寸和 11.1 英寸两种尺寸可供选择,两种选择都将采用纤薄边框和更薄的设计。...
            0 0 269
            分享
          •   因为质量可靠,价格合理,金士顿内存、U盘等产品,在国内线上、线下都有不错的销量和口碑。不过也正因此,金士顿的牌子可能也会被不法分子盯上,制假售假谋取利润。  据报道,最近两年,因售卖的U盘侵犯“金士顿”注册商标,广东、云南、贵州、重庆、陕西等多地的数百家图文广告店、电子产品店、文具店、手机配件店,被金士顿科技有限公司告上法庭。5月22日,贵州省毕节市大方县的一批类似案件开庭。  此前,这些案件已在各地分批次公开开庭审理、宣判。一些案件在开庭前已庭外和解,被告进行了私下赔偿。一些被告则积极应诉,最终法院判处赔偿原告数百元或二三千元。  大多数被告称,他们对售卖商品侵犯注册商标一事毫不知情,且...
            0 0 649
            分享
          • 1、背景介绍当我们在接口或UI自动化项目中,常常会出现这种现象——明明是正常请求,却无法获取到想要的数据返回。比如:场景A:页面是动态数据,第一次进入页面获取到的数据,和下次进入页面获取到的数据完全不一样。场景B:页面数据有展示限制,页面某些模块或整个页面数据仅展示3次,且通过服务端返回控制。这时我们要怎么办?如果是手工测试时,我们大可以直接使用Charles、Fiddler进行模拟,毕竟代理软件基本能解决大部分测试需求。那如果是在自动化项目中呢?如果还是使用代理软件——其实也不是完全不行,但我们还有更佳的实践方式。也就是使用MitmProxy作为正向代理拦截请求和返回数据。2、如何使用Mit...
            0 0 1726
            分享
          • 随着软件开发项目的规模不断扩大,它们往往更加复杂,项目开发周期越来越快,依靠手动测试跟上步伐可能具有挑战性,这就是为什么越来越多的公司选择进行自动化测试. 这使团队能够在合理的时间范围内满足测试目标。但究竟什么是自动化测试,为什么很重要?自动化有什么好处执行测试自动化的主要目的是降低构建产品所需的成本和时间,同时确保其构建为高标准。通过自动化测试,自动化工具和操作被添加到软件开发流程中。如果测试是自动化的,每次都会进行相同的测试,这意味着可以更快地发现更多错误。自动化测试还可以提供更好的报告。自动化测试 VS 手动测试围绕 IT 行业的最大神话之一是,现在我们已经有了自动化测试,手动测试将消失...
            0 0 814
            分享
      • 51testing软件测试圈微信