测试用例的方法
-
等价类
-
边界值
-
判定表法
-
正交实验法
-
流程分析法
-
状态迁移法
-
输出域覆盖法
-
输入域覆盖法
-
错误猜测法
-
异常分析法
-
因果图法
进行需求分析,提需求问题
-
需求中输入项的规则是否明确?是否有自己不理解的问题?
-
功能是否操作了数据库?操作了数据库哪些表?
-
相关联的功能有哪些?
作为专业的测试工程师,拿到需求后,不是立刻想用什么方法设计用例,而是先从以上3点进行需求分析,把发现的问题汇总之后,找开发或产品或主管沟通确认之后,再设计测试用例,因为只有需求分析全面了,用例才能设计全面
设计用例
- 选择一个测试用例的方法构造测试数据
-
分析预期结果
(1)正常结果:输入和操作都正确的输出结果
-
界面提示信息
-
数据库中数据是否存储正确
-
相关联的功能是否正确
(2)异常结果:输入错误或操作错误后的输出结果
一般是给出相应的错误提示信息
-
-
编写测试用例
先写正常的测试用例,再写异常的测试用例
[图片上传失败...(image-d6dcd-1558190284911)]
等价类法
有效类:符合规则的一类数据,一般找长度区间内的数据作为代表
无效类:不符合规则的各种分类
特点:测试数据无穷多,找代表性数据进行测试
边界值法
在等价类基础上,追加边界上的数据,进行测试的方法
上点:长度边界上的点
离点:离边界最近的点,闭外开内
例:[6-18] 上点:6,18 离点:5,19
(6-18) 上点:6,18 离点:7,17
判断表法
-
概念:条件桩:功能要判断的条件
动作桩:功能产生的结果
-
画判定表的步骤:
-
根据需求,列出所有的条件桩,个数为n
-
根据需求,列出所有的动作桩
-
列出条件桩的全组合:2的n次方个
-
根据需求分析每种全组合对应的动作桩
-
-
编写用例
判断表中的一列对应一条用例,不存在的组合,不需要设计用例
-
适用范围:功能存在多个判定条件,并且不同的条件组合,可能会产生不同的结果
[图片上传失败...(image-52b4c6-1558190284912)]
正交实验法
-
概念:因子:输入项
状态:每个因子的选项
-
手工设计用例的步骤
-
从需求中找出因子和状态,画因子状态表
[图片上传失败...(image-2e810a-1558190284909)]
-
用符号代替因子状态表
[图片上传失败...(image-2ecd14-1558190284909)]
-
合并或补充因子状态表,为了符合标准的正交表
[图片上传失败...(image-78e651-1558190284909)]
-
将合并或补充后的因子状态表,带入到标准的正交表中
[图片上传失败...(image-6b2f01-1558190284909)]
-
若有合并的状态,需要拆分正交表
[图片上传失败...(image-ccb93e-1558190284909)]
-
用汉字替换符号
[图片上传失败...(image-3d7f21-1558190284909)]
-
编写用例:一行对应一条用例
-
-
用allpairs工具生成
-
适用范围:功能中存在多个输入项(因子),每个输入项下都有多个固定的选项(比如下拉框形式),并且输入项之间相互独立,没有任何关联关系
流程分析法
-
适用范围:用户要经过多个操作、多个界面、多个输入共同完成一个功能,功能需要与用户进行多次交互
-
画流程图步骤:
-
从需求中找出所有判断条件(如果、若、假如、当等),做标记,注意挖掘隐士判断条件
-
将所有判断条件罗列到流程图中,用判定框表格判断条件
-
先画基本流,即输入、操作都正确的情况
-
再画备选流,即输入错误或操作错误的情况
-
-
编写用例:一条路径对应一条用例
-
优点:能够帮助我们梳理清楚复杂功能的处理流程
缺点:设计的是最少用例数,需要用等价类边界值法补充测试数据
状态迁移法
-
适用范围:需求中明确存在多个状态,需求中有些操作可以看成是状态,状态之间可以流转
-
步骤:
-
列出所有的状态
-
根据需求描述画状态矩阵
-
将状态矩阵转换成状态树(广度优先画法、深度优先画法)
-
-
编写用例:一条路径对应一条用例
-
优点:画出的状态树,能够覆盖状态之间可达的情况
缺点:没有覆盖状态之间不可达的情况,需要追加用例
输出域覆盖法
-
适用范围:在需求中先了解到功能的输出结果,从输出结果倒推输入的情况
-
例:钉钉签到功能,在公司方圆10米内签到
输入域覆盖法
在等价类边界值的基础上增加一些极端值或特殊值的测试数据,进行测试的方法,比如测试拨打电话功能时,除了11位手机号,还应该进行特殊值测试,如:110,119,120等
因果图法
-
适用范围:功能中存在多种输入的情况,这些输入之间存在一些约束关系,并且输入之间的组合会产生不同的结果
-
因果图符号
[图片上传失败...(image-6eafef-1558190284910)]
[图片上传失败...(image-b2433f-1558190284910)]
-
画因果图步骤
-
根据需求列出所有的原因和结果,并进行编号
-
画因果图:先画输入与输入之间的约束关系,再画因果关系
-
将因果图转换成判定表
-
编写用例:一列对应一条用例,不存在的组合不需要设计用例
-
异常分析法
人为让被测试故障,测试系统的恢复能力,如:断电、断网、弱网、低内存、数据损坏、中途终止程序、文件上传下载过程点击取消等等。
在测试时间充足的情况下,一般作为补充测试
错误猜测法
根据以往的测试经验,以及对被测系统的需求内部知识的了解,列出系统中容易出现错误的情况,来进行测试的一种方法
口诀
所有输入选等价
给定范围加边界
条件孤立想判定
指定常量取正交
跨界操作流程法
多种状态迁移图
条件组合出因果
测试充分全覆盖
多种方法不唯一
网友评论