测试用例格式
用例编号:A-B-C-D
A:产品或项目名称;B:用例属性(ST,IT,UT);C:客户管理(新增客户,什么类型的客户);D编号
例:CRM-ST-客户管理-新增客户-001
测试项:针对于某种对象的测试用例(客户管理-新增客户)
测试标题:新增名称为空的客户信息;新增名称超过20个字符的客户信息:新增名称包含单引号的客户信息
用例属性:功能测试;性能测试;兼容性测试;安全性测试;
重要级别:(顺序由低到高)
高:实现主体功能的用例、
中:主项流程经过备选流处理或者经过异常处理能够正确实现
低:1GUI;2易用性表达;3文字描述类
操作步骤:根据用例进行实际操作
预期结果:用户使用说明书上所描述的结果
实际输出:测试完成后的实际结果
等价类:
1具有相同属性或方法的事物集合
2这个集合某个个体所表现的特征与其他个性完全一致
3对于某个被测对象的测试输入而言,某个个体所能够被接受或被拒绝,则该个体所在集合中的任意个体都应该被接受或拒绝
等价类划分:
有效等价类:针对被测对象而言,合理的,有意义的,系统接受的输入
无效等价类:针对某个对象而言,不合理无意义系统不能接受的输入
等价类划分规则:
1如果需求规定的输入域的取值个数或确定了某个范围时,则可确定一个有效等价类及两个无效等价类(例:有效等价类[用户名长度在6-18位]无效等价类[用户名长度大于18位][用户名长度小于6位])
2如果需求规定了某个输入域的集合,或者必须如何的情况下,可确定一个有效等价类及一个无效等价类(例:有效等价类[以字母开头]无效等价类[非字母开头])
3如果需求规定了某个输入域是真假值时,可确定一个有效等价类及一个无效等价类
4如果用户需求规定了输入域的一组值,则可确定若干个有效等价类及一个无效等价类
进行用例设计:
1根据需求,划分有效及无效等价类,有效等价类统一编号,无效等价类统一编号
2设计一个新的测试用例,使其尽可能覆盖所有尚未覆盖有效等价类,直到所有有效等价类都被覆盖
3设计一个新的测试用例,使其仅覆盖一个无效等价类,直到所有无效等价类都被覆盖
等价类四则运算法:
加:不考虑需求其他子项,细致分解当期测试点及详细需求最累加
减:根据业务规则减少,排除相关不可能出现的规则,减少不可能出现的组合
乘:如果有效等价类中具有互斥条件的需求时,可进行相乘得到用例个数
除:排除所有具有重复特性的等价类,尽可能做到有效等价类之间交集为空,无效等价类之间的交集也为空,有效及无效等价类的并集为整个输入域
边界值:(例:用户名长度在6-18位)
边界值三点:上点[边界值上的点(6,18)];离点[①离上点最近的点(5,19)②根据上点的精确度确定];内点[边界值有效范围内的任意一点(10,15等等)];
如何确定离点[①如果边界值是闭区间,则离点在外(用户名长度在(6,18)之间,则上点6,18;离点7,17;内点10)②如果边界值是开区间,则离点在内 (用户名长度在[6,18]之间,则上点6,18;离点5,19)];
边界值应用场景:
1如果需求规定了取值范围或取值个数时,可利用该范围的边界内及边界附近的数据进行测试;例[6,18]上点6,18离点5,19内点10
2如果需求规定了取值的个数,则少于个数一个,或多余个数一个的值进行测试;例购买5件商品则打8折,测试的数据为:4件商品,5件商品,6件商品
3如果需求规定了一个有序集合的时候,可使用该集合的第一个和最后一盒值进行测试;例:下拉列表中有四个城市名,现在可供选择,测试数据为第一个城市名和最后一个城市名
如果程序中使用一个人内部数据结构的话则应该从该数据结构的边界进行考虑
边界值方法应用的步骤:
1根据等价类方法划分有效及无效等价类,确定上点,离点及内点,每个点统一编号
2设计一个新的测试用例,使其尽可能覆盖所有尚未覆盖的有效等价类,直到所有有效等价类完全覆盖
3设计一个新的测试用例,使其仅覆盖一个无效等价类,直到所有无效等价类完全覆盖
判定表
定义:
1分析和表述若干输入条件下,被测对象针对这些输入做出的相应一种工具
2在遇到复杂逻辑业务时可以利用该表理清业务逻辑的关系
重要概念:
1条件
① 条件桩:需求规格说明书定义的被测对象的所有输入
② 条件项:针对条件桩所有可能的数据数据的真假值
2动作
① 动作桩:针对条件被测对象可能采取的所有操作
② 动作项:针对动作桩,被测对象相应的可能取值
3规则:动作项和条件项组合在一起,形成业务逻辑处理规则
判定表应用步骤:
1理解需求,确定条件桩、动作桩
2设计及优化判定表
3填写动作项
4根据判定表中输出结果的表现,进行判定表的合并(非必须),简化判定表:如果输出相同,在其对应输入中,有且只有一个条件的取值对动作不产生任何影响则可合并
5抽取测试用例
因果图
1鱼骨图
2输入与输入的关系
① 异:输有输入条件中最多有一个产生,也可以一个没有
② 或:所有输入条件中,最少有一个产生,或多个,也可以是所有
③ 唯一:所有输入条件中,有且只有一个条件产生
④ 要求:所有输入条件,只要有一个产生,其他跟着也会出现
输入域输出的关系:
① 恒等:(1)当输入条件发生时,结果一定会出现(2)当输入条件不发生时,结果一定不会出现
② 非:(1)当输入条件发生时,结果一定不会出现(2)当输入条件不发生时,结果一定会出现
③ 与:当多个输入条件中,只有所有输入条件都发生,结果才会出现
④ 或:当多个输入条件中,只要有一个发生,结果就会出现
正交试验
1因子:所有参与试验的影响试验结果的条件成为因子
2水平:影响试验因子的取值或输入成为水平
3整齐可比:在同一张正交表中,每个因子的每个朔评出现的次数完全相同,试验中,每个因子的每个朔评与其他因子的水平参与试验的几率完全相同
4均匀分散:同一张正交表中,任意两列的水平搭配是完全相同的
5设计流程
① 分析需求获取因子及水平
② 根据因子水平选择合适的正交表
③ 替换因子水平,获取试验次数
④ 根据经验会其他因素补充试验次数
⑤ 细化输出获取测试用例
注意点
① 选择正交表时,因子与水平恰好与正交表相同
② 被测对象因子与正交表中的因字数不同时,选择正交表中因子稍大于被测对象因子数,且试验次数最少的,多余的因子弃用
③ 被测对象水平与正交表中的水平不同,可根据实际情况进行合并,然后拆分
④ 因子水平都不相同,则可选择因子、水平稍大于被测对象的,且试验次数最少的
状态迁移
关注被测对象的状态变化,在需求规格说明书中是否有不可达到的状态和非法的状态,是否产生非法的状态迁移
状态:被测对象在特定输入条件下所保持的响应状态
方法流程:
1根据需求明确状态节点
2绘制状态迁移图
3绘制状态迁移树
4抽取测试用例
测试分析
1场景设计法:
三个流程:①基本流:通过业务流程输入都为正确的,能都最后达到目标的流程(例:atm取款:插入银行卡,输入密码,输入取款金额,取款,取卡)
②备选流:通过实现业务流程时,因错误操作或异常输入,导致流程存在反复,但最终能够完成期望业务的流程(例:atm取款:插入银行卡,输入密码【第一次错误,第二次正确】,输入取款金额,取款,取卡)
③ 异常流:通过实现业务流程时,因错误操作或异常输入,导致业务没有正确完成(例:atm取款:插入银行卡,输入密码【三次都错误】吞卡)
使用方法:
① 理解需求,确定业务流程(基本流,备选流,异常流)
② 绘制流程图,再次明确流程路径
③ 根据业务流程图,抽取测试路径(每次路径需包含一个从未走过的路径)
④ 细化路径,设置测试用例
注意点:需要使用等价类、边界值、正交试验、判定表、因果图等方法保证单个功能的正确性