7.1上课笔记
7.1上课笔记
设计用例方法之判定表
一、判定表
1、定义:分析和表达多逻辑条件下的执行不同的操作的情况
2、作用:对组合情况设计不同用例
利用判定表将负责的问题按照各种可能的情况全部列举出来,能针对不同逻辑条件的组合值,分别执行不同的操作。
3、判定表的组成4部分:
条件桩、条件项、动作桩、动作项
条件桩:列出问题的所有条件(通常条件次序无关紧要)
条件项:列出针对它的条件的取值(所有情况下的真价值)
动作桩:列出问题规定可采取的动作(顺序无约束)
动作项:列出条件各种情况应采取的动作
4、案例:
对功率大于50马力的机器、维修记录不全或 已运行10年以上的机器,应给予优先的维修处理。。。。。
理解:
1、功率大于50马力的机器,维修记录不全 两者条件满足)(优先)
2、 已运行10年以上 (优先)
备注:条件有3个,每个条件都有2个选项,满足,不满足(水平数)
2的3次方=8次,8次覆盖所有的组合情况
5、判定表创建步骤:
(1)确定规则的个数:有n个条件,每个条件有两个值,有2^n次方规则
(2)列出所有条件桩和动作桩
(3)输入条件项
(4)输入动作项得到初始化判定表
(5)简化(合并相似规则)
(6)编写测试用例
6,判定表的作用:利用判定表将复杂的额问题按照各种可能的而情况全部列举出来,能针对不同逻辑条件的组合组,分别执行不同的操作
设计用例方法之因果图
一、因果图
1、定义:因果图土工一个把规格转化成判定表的系统化方法,从该图中可以产生测试数据。其中,原因是表示输入条件,结果是对输入执行的一系列计算后得到的输出
2、作用:
因果图方法最终生成的就是判定表,它适合预检查软件输入条件的各种组合情况
3、认识因果图中的基本符号
(1)恒等:
如:有存款==富豪
(2)非:~
如:有钱=~=乞丐
(3)或:v
如:三个条件 有车、有房、有存款 只要满足一个条件
富豪
(4)与^
如:三个条件 有车、有房、有存款 只要满足三个条件
富豪
(5)异(E):a、b最多有一个可能为1,a,不同同时为1.
如:收货机:两个按钮:啤酒、饮料 最多选择一种饮料
(6) 或(I):a,b,c中至少有一个必须为1,a、b、c、不同同时为0
如:3个人,可以一个人出门,可以两个人出门,可以三个人出门
(7)唯一(o) :a和b 必须有一个且仅有一个为1
如:3个人,只有一个人出门
(8)要求(R): a是1时,b必须为1,a为1,b不能为0
如:a、b同时出门
(9)强制:(M): a为1,b强制为0
如:a出门,b守家
4,因果图转换判定表的方法:
- 将因果图中的所有条件(因)填入判定表 的条件桩中;
- 将因果图中的所有动作(果)填入判定表 的动作桩中;
- 根据因果图确定各个条件组合对应的动作, 并且确定判定表中各个规则的条件项和动 作项,在需要时优化判定表。
5、
因果图的步骤:
1.把大的系统规格划分解成可以测试的规格片段
2.分析分解后待测的系统规格,找出哪些是原因,哪些是结果
3.画出因果图
4.把因果图转换成判定表
5.简化判定表
6.用判定表中的每一列生成测试用例
6、
因果图的优点/缺点
优点: - 等价类法尽管各个输入条件可能出错的情况都考虑 到了,但是多个输入条件组合起来出错的情况却被 忽略了
- 因果图法能够帮助我们按照一定步骤,高效的选择 测试用例,设计多个输入条件组合用例
- 因果图分析还能为我们指出,程序规格说明描述中存在什么问题
缺点: - 输入条件与输出结果的因果关系,有时难以从软件 需求规格说明书得到
- 即使得到了这些因果关系,也会因为因果关系复杂 导致因果图非常庞大,测试用例数目及其庞大
7、案例:
一个处理单价为5角钱的饮料的自 动售货机。其规格说明如下:
若投入5角钱或1元钱的硬币,押下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。若售货机没有零钱找,则一个显示〖零钱找完〗的红灯亮,这时在投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来;若有零钱找,则显示〖零钱找完〗的红灯灭,在送出饮料的同时退还5角硬币;
原因:
1、投入5角钱
2、投入1元钱
3、有零钱
4、押下〖橙汁〗
5、押下〖啤酒〗
中间结果:
1、该找5角
2、押下按钮
3、钱付清
结果:
1、〖零钱找完〗的红灯亮
2、送出饮料
3、送出啤酒
4、退货回5角
5、1元硬币也退出来
案例2:
某软件规格说明书包含这样的要求:第一列字符必须是A或B,第二列字符必须是一个数字,在此情况下进行文件的修改,但如果第一列字符不正确,则给出信息L;如果第二列字符不是数字,则给出信息M。
解答:
根据题意,原因和结果如下:
原因:
1——第一列字符是A;
2——第一列字符是B;
3——第二列字符是一个数字。
结果:
21——修改文件;
22 ——给出信息L;
23——给出信息M。
其对应的因果图如下:
11为中间节点;考虑到原因1和原因2不可能同时为1,因此在因果图上施加E约束。
一、正交实验法
1、定义:是从大量的实验点中国挑选出适量的,有代表性的点,应用依据迦罗瓦理论到处的正交表,合理的安排实验的一种科学的试验设计方法。
2、正交表中常用的术语:
实验次数:实验代表所有的次数
因子:所有影响实验指标的条件
水平值:影响实验因子的取值
案例:姓名、身份证号码、手机号
因子:3 个条件 (姓名、身份证号码、手机号)
水平值:2 (填或不填)
总的方法:2的3次方=8次
通过正交实验法:4次
计算公式:
实验数=因子(水平值-1)+1
3(2-1)+1=4
正交表特点
正交表特点:
1》整齐可比性
在同一张正交表中,每个因素的每个水平出现的次数是完全相同的。由于在试验中每个因素的每个水平与其它因素的每个水平参与试验的机率是完全相同的,这就保证在各个水平中最大程度的排除了其它因素水平的干扰。
2》均衡分散性
在同一张正交表中,任意两列(两个因素)的水平搭配(横向形成的数字对)是完全相同的。这样就保证了试验条件均衡地分散在因素水平的完全组合之中,,因而具有很强的代表性,容易得到好的试验条件
4,用正交表设计测试用例的步骤:
(1)有哪些因素(变量或条件)
(2) 每个因素有哪几个水平(变量或条件的取值)
(3) 为了满足整齐可比性,选择一个合适的正交表
(4) 把变量的值映射到表中(建议第1行是全真或全假)
(5) 把每一行的各因素水平的组合做为一个测试用例
(6) 加上你认为可疑且没有在表中出现的组合
(5)
正交的原则:两两组合
经验测试方法:
一、错误推测法(也叫错误猜测法)
定义:就是根据测试经验猜想,已有的缺陷,测试经验和失败数据等可能有什么问题并以此色设计测试用例。
比如:秒杀,出现资损失
下单,数据库锁的异常处理
二、异常分析法
定义:针对系统有可能存在的异常操作、软硬件缺陷引起的故障进行分析。以此设计测试用例,主要针对系统的容错能力,故障恢复能力进行测试
比如:
1、红米、华为、ios
2、 不同设备同步下单,经常引起下单失败(ipad)
三、随机测试法(不写测试)
定义:测试中的所有的输入数据都是随机生成,其目的是模拟用户操作。真实环中,尤其是刚刚发布时,会有成千上万的人在上面乱敲乱试;
比如:
(1)领导视察软件,使用以下,这种就是测试,出现问题
(2)游戏版本:玩家试玩,玩家也是顺便玩,有问题就反馈
四、总结:
设计用例10种:
7种黑盒测试方法:
等价类、边界值、场景法、状态迁移法、判定表、因果图、正交表
作用:
(1)等价类、边界值主要是针对单个功能测试设计
(2)判定表、因果图、正交表 主要针对多组合情况
(3)场景法:测试整个流程
(4)状态迁移法:针对状态的变更的用例
3种经验测试方法:
错误推测法、异常分析法、随机测试法
五、使用测试方法的思路
(1)用场景法梳理整个测试流程;
(2)在用等价类、边界值去单独写每一个功能
(3)在用判定表、因果图、正交表去写组合情况的用例
(4)在用状态迁移法,写状态变更的用例
(5)最后在用经验测试方法(错误推测法、异常分析法、随机测试法)补充测试用例
备注:边界值是测试方法中发现错误能力最强
六、写好测试用例方法
利用10种测试用例方法不断对用例进行分解和合并
七、面试题:
1、你会哪些设计用例方法?
2、你如何能写好用例?
3、设计用例的方法有哪些?
白盒测试方法
1、白盒测试(结构测试或者逻辑驱动测试)
定义:检查程序内部结构及路径是否符合规格说明,符合代码规范;
2、白盒测试方法:
a、语句覆盖
b、判断覆盖
c、条件覆盖
d、判断、条件覆盖
e、条件组合覆盖
f、路径覆盖
(1)独立路径
(2)z路径(循环路径)
3、白盒测试的有优缺点:
优点:
(1)深入程序内部,测试粒度较细
(2)是测试用例设计方法的组成部分,也是黑盒测试方法有力补充
(3)为自动化测试与性能测试奠定基础
缺点:
(1) 比较关注代码本身,容易偏离srs实际需求
(2)对相应的编程语言要求高,人力成本较大
4、设计用例的所有方法
黑盒测试方法+白盒测试方法+经验测试方法
浙公网安备 33010602011771号