第6课—设计测试用例方法之场景法(重要)
场景法
(1)定义:场景法主要是针对测试场景类型的,故也称场景流程分析法。
(2)流程分析:是将软件系统的某个流程看成路径,用路径分析的方法来设计测试用例。根据流程的顺序依次进行组合,使得流程的各个分支都能走到
案例:
1》人事考勤系统:离职流程有哪些?
2》网购商品流程有哪些?
(3)熟悉xmind思维导图(也称脑图),梳理测试点,和测试流程
类似软件:亿图,wps流程图,
(4)
流程分析步骤:
- 画出业务流程图
注:描述正常流程和异常流程 - 确定条件分支(功能路径)
注:设计路径的优先级 - 确认测试路径
注:考虑路径覆盖率 - 选择数据构造用例
注:选数据要结合等价类边界值分析
(5)
作业案例:
针对ATM机的取款流程进行测试
其基本流程如下:
1.用户向ATM插卡,验证卡
2.输入密码,ATM机验证密码
3.输入金额,系统会验证金额
4.出钞,并且数据库将帐户中的金额减去
5.用户拿钱
6.选择退卡
7.ATM机恢复初始状态
===============================
正交试验法
(1)定义:
正交试验设计法,是从大量的试验点中挑选出适量的、有代表性的点,应用依据迦罗瓦理论导出的“正交表”,合理的安排试验的一种科学的试验设计方法。
(2)正交常用的术语
指标:通常把判断试验结果优劣的标准叫做试验的指标
因子:所有影响试验指标的条件
水平值:影响试验因子的取值
(3)正交表特点
正交表特点:
1》整齐可比性
在同一张正交表中,每个因素的每个水平出现的次数是完全相同的。由于在试验中每个因素的每个水平与其它因素的每个水平参与试验的机率是完全相同的,这就保证在各个水平中最大程度的排除了其它因素水平的干扰。
2》均衡分散性
在同一张正交表中,任意两列(两个因素)的水平搭配(横向形成的数字对)是完全相同的。这样就保证了试验条件均衡地分散在因素水平的完全组合之中,,因而具有很强的代表性,容易得到好的试验条件
(4)用正交表设计测试用例的步骤:
(1)有哪些因素(变量或条件)
(2) 每个因素有哪几个水平(变量或条件的取值)
(3) 为了满足整齐可比性,选择一个合适的正交表
(4) 把变量的值映射到表中(建议第1行是全真或全假)
(5) 把每一行的各因素水平的组合做为一个测试用例
(6) 加上你认为可疑且没有在表中出现的组合
(5)正交的原则:两两组合
==========================
状态迁移法:
(1)通过描绘系统的状态及引起系统状态转换的事件,来表示系统的行为
案例:订机票案例1:
l向航空公司打电话预定机票—>此时机票信息处于“完成”状态
l顾客支付了机票费用后—>机票信息就变为“已支付”状态
l旅行当天到达机场后,拿到机票后—>机票信息就变为“已出票”状态
l登机检票后—>机票信息就变为“已使用”状态
l在登上飞机之前任何时间可以取消自己的订票信息,如果已经支付了机票的费用,则还可以得到退款,取消后—>订票信息处于“已被取消”状态转换成迁移树:
(2)状态迁移图设计测试用例步骤:
1.画出状态迁移图
2.通过状态迁移图出状态转换树
3.从状态转换树推导出测试路径
4.根据测试路径编写合法(正常)测试用例或非法(异常)测试用例
注意:保证从状态转换树的根节点到每个叶节点的每一条路径都至少设计出一个测试用例
=========================
一、错误推测法
基于经验的测试技术之错误推测法
错误推测法也叫错误猜测法,就是根据经验猜想,已有的缺陷,测试经验和失败数据等可能有什么问题并依此设计测试用例.
二、异常分析法
基于经验的测试技术之异常分析法
系统异常分析法就是针对系统有可能存在的异常操作、软硬件缺陷引起的故障进行分析,依此设计测试用例。
主要针对系统的容错能力、故障恢复能力进行测试
比如:红米,华为 ,ios
三、随机测试
基于经验的测试技术之随机测试
随机测试指的是测试中的所有的输入数据都是随机生成的,其目标是模拟用户的操作。真实环境中,尤其是软件刚刚发布时,会有成千上万的人在上面乱敲乱试;
因此在发布软件前,用模拟用户的随机测试就可能发现其它方式漏掉的软件缺陷
=====================================================================
总结:
10种方法:
7种黑盒设计用例方法,3种基于经验测试的方法
7种:等价类、边界值、判定表、因果图、场景法、正交法、状态迁移法
3种:错误推测法、异常分析法、随机测试
作用:
等价类、边界值主要针对 单个功能测试设计(账号)
判定表、因果图、正交法 多组合情况(比如:账号,密码、记住密码)
场景法:测试整个项目流程
状态法: 针对状态变更
一、使用各种测试方法思路(重点)
1.在任何情况下都必须使用边界值分析方法,经验表明用这种方法设计出测试用例发现程序错误的能力最强;
2.必要时用等价类划分方法补充一些测试用例;
3.用错误推测法再追加一些测试用例(依靠经验);
4.如果程序的功能说明中含有输入条件组合情况,则可选用因果图/判定表;
5.对业务流程场景清晰的系统,使用场景法贯穿;
6.检查已设计的测试用例的覆盖程度;
7.最后要考虑异常分析,再进行综合使用。
二、测试用例的设计步骤(功能用例、接口用例、性能用例,安全测试用例)
1.构造根据设计规格得出的基本功能测试用例
2.边界值测试用例
3.状态转换测试用例
4.错误猜测测试用例
5.异常测试用例
6.其它测试类型测试用例(如性能测试,易用测试,安全测试等)
===================================
三、优化测试用例的方法
1.利用设计测试用例的10种方法不断的对测试用例进行分解与合并正交法