黑盒测试方法心得

前言:为了在测试业务中能够更加熟练编写测试用例,现对黑盒测试作简要总结。

一、相关概念

根据测试方式来进行分类的话,软件测试可以分为黑盒测试、白盒测试和灰盒测试。

image

在黑盒测试中,我们进行一些输入,得到某些输出结果,只知道程序做了什么,无需了解程序的内部结构。黑盒测试又称为功能性测试或行为测试,它是一种数据驱动的测试,或者说输入/输出驱动的测试;目标在于找出程序不符合规格说明书的地方。

二、黑盒测试的测试用例设计方法

1. 等价类划分法

等价类划分的目标是把可能的测试用例集缩减到可控制且仍然足以测试软件的小范围内。等价类包括了有效等价类和无效等价类。其中,有效等价类代表对程序的有效输入,而无效等价类代表其他任何可能的输入条件(即不正确的输入值)。

使用等价划分法设计测试用例主要有两个步骤:
1.确定等价类
2.生成测试用例,过程如下:
(1).为每个等价类设置一个不同的编号。
(2).对于有效等价类,每个测试用例都要尽可能多地覆盖那些还没有被涵盖的有效等价类,直到所有的有效等价类都被测试用例所覆盖。
(3).对于无效等价类,每个测试用例只能覆盖一个还没有被涵盖的无效等价类,直到所有的无效等价类都被测试用例所覆盖。
:用单个测试用例覆盖无效等价类,是因为在一些输入错误检查中,可能会出现优先级高的输入错误检查屏蔽或者取代优先级低的输入错误检查的情况。

等价划分的技巧:
(1).一定要考虑建立处理默认值,空白,空值,零值或者无输入等条件的等价划分;
(2).无效等价类要注意非法,错误,不正确和垃圾数据。比如软件要求输入数字,就输入字母;只接受正数,就输入负数等等。

举个例子
注册网易163邮箱时,邮箱名要求6~18个字符,可使用字母、数字、下划线,需以字母开头。

image

等价类列举表如下:

image

:非打印字符指在计算机中有一些字符是确确实实存在,但是它们不能够显示或者打印出来。以ASCII码表为例,ASCII码值在0-31的为控制字符,无法显示和打印。

根据等价类表编写测试用例:
ps:红框中的-4是WPS的bug,输入(4)或者(4)都自动变成-4,不是我写错了~~

image

2. 边界值分析法

如果在悬崖峭壁边可以自信而安全地行走而不掉下去,平地就几乎不在话下了。如果软件能在其边界运行,那么在正常情况下就应该不会有什么问题。
所谓边界条件,指的是输入和输出等价类中那些恰好处于边界,或超出边界,或在边界以下的状态。
边界值分析法实际上是对等价类划分法的补充,是对输入输出的边界值进行测试的一种黑盒测试方法。

边界值分析的技巧:
(1).提出边界条件时,一定要测试临近边界的有效数据,测试最后一个可能有效的数据,同时测试刚超过边界的无效数据。
(2).如果要选择在等价划分中包含哪些数据,就根据边界来选择。

相关扩展:
边界条件一般在产品说明书中有定义,或者在使用软件的过程中很容易找到。而次边界条件,又称为内部边界条件,位于软件内部,最终用户看不到。比如为了获得更高的精度,复杂的数值分析程序根据数字大小可能切换到不同的等式以解决问题。而这在黑盒测试中对于测试人员来说是不可见的。
由于所测试的软件可能有许多其他的次边界条件,软件测试员需要与开发人员交流,获得应该测试的次边界条件的建议。

使用边界值分析法来对等价类划分法中的例子进行补充优化:
邮箱名要求6~18个字符,那么应根据5,6,7,17,18,19个字符的情况来设计测试用例。

image

补充优化后的测试用例表如下:

image

3. 错误猜测法

错误猜测法依赖于直觉。其基本思想是列举出可能犯的错误或错误易发情况的清单,然后根据清单来编写测试用例。另一个思想是,在阅读规格说明时联系程序员可能做的假设来确定测试用例。
错误猜测法的要素共有三点,分别为:经验、知识、直觉。
优点:
  1. 充分发挥人的直觉和经验
  2. 集思广益
  3. 方便使用
  4. 快速容易切入
缺点:
  1. 难以知道测试的覆盖率
  2. 可能丢失大量未知的区域
  3. 带有主观性且难以复制
一般情况下,我们使用错误猜测法来对测试用例进行补充。

4. 场景法

事件触发时的情景形成了场景,而同一事件不同的触发顺序和处理结果就形成了事件流。
在场景法中,测试流程是软件功能按照正确的事件流实现的一条正确流程,我们把这个称为该软件的基本流;而凡是出现故障或缺陷的过程,就用备选流加以标注。如下图所示:

image

从示意图中可以看到,直黑线表示基本流,是经过用例的最简单的路径;备选流则用不同的色彩表示。从开始用例到结束用例,有1个基本流和4个备选流,选取流经不同的路径,得到8种场景。分别是:
场景1:基本流
场景2:基本流 备选流1
场景3:基本流 备选流1 备选流2
场景4:基本流 备选流3
场景5:基本流 备选流3 备选流1
场景6:基本流 备选流3 备选流1 备选流2
场景7:基本流 备选流4
场景8:基本流 备选流3 备选流4

使用场景法设计测试用例的步骤是:
(1).根据说明,描述出程序的基本流及各项备选流;
(2).根据基本流和各项备选流生成不同的场景;
(3).对每一个场景生成相应的测试用例;
(4).对生成的所有测试用例重新复审,去掉多余的测试用例,测试用例确定后,对每一个测试用例确定测试数据值。

还是举个例子:
以在淘宝上买水杯为例,整个购买过程为:用户登录到网站后,进行水杯的选择,当选好自己心仪的水杯后,加入购物车,进行结帐的时候,生成订单并付款,整个购物过程结束。
首先我们需要根据描述确定基本流和备选流:

image

根据基本流和备选流来确定场景:

image

下图显示了一种通用格式,其中各行代表各个测试用例,而各列则代表测试用例的信息。V表明这个条件是 VALID(有效的), I表明这个条件是 INVALID(无效的),n/a(不适用)表明这个条件不适用于测试用例。

image

上表中,我们把每个场景成立的条件进行了分析,基本上已经确定了测试用例的数量,现在只要把真实数据填上,那么整个测试用例就完成了。

三、测试策略

综合上述几种方法,组合出一个整体的策略:
1、在任何情况下都应使用边界值分析法。
2、为输入和输出确定有效和无效等价类。
3、使用错误猜测法完善测试用例。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,684评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,143评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,214评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,788评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,796评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,665评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,027评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,679评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,346评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,664评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,766评论 1 331
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,412评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,015评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,974评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,073评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,501评论 2 343

推荐阅读更多精彩内容