软件测试-黑盒测试学习

黑盒测试方法(功能测试)

定义: 黑盒测试是用来测试程序每个功能是否正常的测试方法,测试过程中,将被测试的程序看作你个黑盒子,不考虑功能具体的逻辑实现,只是验证功能是否符合规格说说明书的要求。主要用于用户界面和功能的测试。

常用用例设计方法: 等价类划分,边界分析,判定表,场景法,错误推测法,因果图,状态迁移,

等价类划分:

适用场景: 单一条件的输入,不适用于多条件的逻辑组合。

定义: 将程序的输入域划分为若干个部分,让后从其中挑选中部分数据设计用例,使得海量的测试数据分类,简化了测试的数量。 等价类分为有效等价类,无效等价类。有效等价类: 对于需求规格说明书合理且有效的的输入集合。无效等价类: 对于需求规格说明书不合理且无效的输入集合

划分等价类时应注意: 一个需求中的每个要素要对应一个有效和多个无效等价类

根据划分的等价类设计用例: 一条用例要尽可能包含多个有效等价类,知道覆盖完所有的有效等价类组合,一条用例只能包含一个无效等价类,直到覆盖所有的无效等价类。

例如: 密码由字母,数字,长度为6-12,

要素: 长度, 组合规则

有效等价类:

  • 长度6-12
  • 包含字母,数字

无效等价类;

  • 长度>12
  • 长度<6
  • 只包含字母
  • 只包含数字
  • 包含中文字符
  • 包含符号字符(! , .+ @等)
  • 特殊字符(空格等)

做出等价类表,然后更具等价类表设计用例,
在这里插入图片描述


边界值

适用场景: 输入条件存在限定范围的用例设计,与等价类划分结合。

定义: 长期的测试统计表明,大量的错误都出现在输入或输出的边界值。边界值分析法就是针对各种边界测试设定的方法。常用等价类划分结合。

边界值选取原则:选取大于等于,小于等于边界的数据。


判定表:

适用场景:不同条件组合下,存在不同输出的测试用例的设计。但条件于输出不存在

判定表的组成:

  • 条件桩: 所有可能的条件。
  • 条件项:每个条件的取值
  • 动作桩:所有的输出(结果)
  • 动作项: 各种条件组合对应的操作(结果)的取值

判定表以二进制的形式表示,每一列代表一条用例

例如:打印机正常打印:需要存在纸张,存在墨粉,驱动程序正常,
存在异常时,优先警告缺纸,其次缺墨粉,然后驱动程序异常

条件桩(所有的条件):是否有纸张,是否有墨粉,驱动程序是否正常
动作桩(所有的结果):打印纸张,警告缺纸,警告缺墨粉,警告驱动程序异常
列表:0 表示 否,1 表示 是
每一列代表一个用例, 但在特定条件下可以简化判定表

在这里插入图片描述


因果图

适用场景: 和判定表相似,用于多条件测试用例输出,条件之间存在组合,且条件之间有制约,结果之间也有制约。

因果图中的符号:

因果符号:条件与结果之间的关系

恒等:条件与结果的真 值相同

与:条件存在假则结果为假,条件全真,结果为真

或:条件存在真则结果为真,条件全假,结果为假

非:条件与结果的真值相反

在这里插入图片描述

条件关系符号:条件之间的关系

互斥(Exclude):不选或者选其一

唯一(Only): 必选其一

包含(Include): 至少选一个

要求(Required): 条件a=1,则必须b=1,若a=0,则b不影响(有a必有b,
无a则b无关紧要)

在这里插入图片描述

结果符号:结果之间的关系

结果a=1,则结果b=0

结果a=0, b可为1,可为0
在这里插入图片描述

例如: 自动售卖机测试
售卖规则:

  • 饮料的单价5元,且单次只能购买一瓶,总有饮料
  • 投入5元,按下雪碧或可乐按钮,送出对应的饮料,
  • 投入10元,按下雪碧或可乐按钮,送出对应的饮料,并找钱
  • 若售卖机无钱找零,则【无零钱提示灯】亮起,此时投入十元则直接退出零钱
  • 若售卖机有钱找零,则【无零钱提示灯】不亮,此时投入十元,正常购买并找零

理出条件与可能的结果并编号

在这里插入图片描述

画出因果图

步骤:理清条件之间的关系,结果之间的关系,构造中间条件,条件与中间条件的关系(中间条件此时相当于结果),然后作图
例如:这里 当投入10元时,会有零钱找的限制,这里形成一个组合

大概画出个图吧,画不好了,哈哈

然后格局途中的每条路径设计用例

在这里插入图片描述


场景法:

适用场景:针对软件的一些操作流程的测试,只是针对流程中各种判断的结果的验证,不涉及具体的输入细节判断。

定义:场景法一般包含基本流和备用流。基本流是通过每个判断节点的正确操作流程,备选流是各个判断节点下错误操作。

例如: ATM取款
首先应该写出基本流,然后在基本流的每个判断节点写出备选流,根据基本流和备选流构造场景,然后输出用例,可适当对遗漏的场景做出补充。
1.插入卡片;2.卡片校验(卡是否有效);3.输入密码;4.判断密码是否真确;5.选择取款;6.输入取款金额;7.判断余额是否足够;8.取款成功;9.选择取回卡片;10.卡片退出;


状态迁移法

适用场景: 针对业务流程中操作对测试对象影响的用例设计方法,只是关注某种操作对程序的某个对象状态的影响。

定义: 关注被测对象的状态变化,在需求规格说明书中是否有不可达到的状态和非法状态,是否产生非法的状态转移状态,即被测对象在特定输入条件下所保持的响应形式

例如: 用户购买商品操作。

操作对测试对象(商品)的改变:

操作状态
1. 用户点击购买商品未付款商品状态:待付款
2. 用户确认付款商品状态: 已付款
3. 商家确认订单商品状态: 代发货
4. 商品发出商品状态:已发货

状态迁移图
在这里插入图片描述

根据迁移路径提取用例(提取每条路径,起点到终点)

待支付->已取消
待支付->已支付->已取消
待支付->已支付->待发货->已取消
待支付->已支付->待发货->已发货

结合需求说明书编写详细的测试用例


错误推测法

定义:根据以往的测试经验,结合对需求归给说明书,对程序的各个功能模块可能出现的错误进行推断,设计出用例



参考网址:

链接:https://www.cnblogs.com/test-123/p/9686346.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值