标签:时间 用户需求 项目 故障 逻辑 inf com 正交 需要
2.编写测试用例的方法==7种==
测试常用的方法:code review +代码静态分析、CI/CD
CI--持续集成--开发成员经常集成它们的工作,尽快发现集成错误
CD--持续部署--将集成后的代码部署到更贴近真实运行的环境
用例编号 用例标题 功能模块名称 前置条件 输入数据 操作步骤 预期结果
优先级 执行结果 编写人 执行人 其他补充项
(1)基于需求:依据需求来写测试点
? 难点:读出需求之外的测试点(需求非常的了解)
需求学习方法:、
(2)等价类--分类
思想:解决无穷输入
目的:减少测试用例条目
概念:无穷输入进行N个归类,从第一个类中提取一个数据进行测试,只要这个数据测试通过,我们就任务它所在的这一类的数据全部测试通过
有效等价类:根据需求说明书,和需求一致,有意义的输入数据构成的集合
无效等价类:和需求不一致,不满足需求的集合
(3)边界值:--黑盒测试方法
测试用例来自等价类的边界,是等价类的一种补充方法,与它基本成对出现
场景:输入和输出
强调:输入和输出的“边界值”
取值:开区间和闭区间
开区间--向外取值,闭区间--向内取值
【1,50】---0,1,50,51
(1,50】--1,2,50,51
(4)因果图--条件和结果的关系--最后转为判定表
场景:输入(原因)和输出(结果)之间的关系
概念:输入(原因)和输出(结果)之间的关系,输出依赖输入(多个)
因果图需要掌握的基本知识
基础概念:
恒等、与、或、非
恒等
如果原因为真,那么结果必定为真。
与
只有两个原因都为真,那么结果为真
或
2个原因有一个为真时,结果为真
非
原因为假,结果才为真
因果图设计测试用例的步骤:
- 列出所有输入
- 列出所有输出
- 理出输入和输出之间的关系
- 画因果图
- 画判定表,列数是输出的输入次方
- 从表里提出测试用例
因果法设计测试用例可以帮助测试人员理清输入和输出的关系,但是对于比较复杂的输入和输出,会耗费大量时间
(5)正交排列法:--减少用例数目,对因果图的改进
? 原理:正交表,正交实验(抽样)
? 目的:减少测试用例的条数
? 两条性质:
任何一列中出现的数字个数一样\
任何两列中有序对出现的次数一样
L=N(TC)--L:正交表
N:行数实验次数
T:水平数(变量的可取值个数)
C:因素数(变量的个数),列
N=C*(T-1)+1
步骤:
-变量提取出来
-提出水平
- 找出正交表(多个)
-取值---映射到表中
-表中每一行就是一条测试用例
-特殊的测试数据表中没有的添加进来
(6)场景法:业务流程(一个业务流程不一定是一个场景)
业务流程:把孤立的功能点串起来
注册--登录--写邮件--发邮件
业务流程是场景法的典型用法
(7)错误推测法(猜测)
非凭空想象,是有来源的,三大来源:
- 对某项目测试时间长
- 用户反馈
- 从故障库中整理bug,梳理产品以往哪些地方容易出现问题
例如:输入框要求字符类型--字符型
输入非字符型:是等价类中的无效等价类,同时它也是错误推测法
- 分为项目组评审
- 用户评审:可以是最终用户也可以是程序员
- 同行评审
- 白盒:要查看代码
等价类划分、边界值分析、因果图、场景法、正交实验设计法、判定表、驱动分析法、错误推测法、功能图分析法,依据是用户需求规格说明书、详细涉及说明书
语句覆盖、判断覆盖、条件覆盖、路径覆盖、条件组合覆盖,依据是代码结构和逻辑
六种覆盖标准发现错误的能力由弱到强的变化:
-语句覆盖,每条语句至少执行一次。
-判断覆盖,每个判断的每个分支至少执行一次。
-条件覆盖,每个判断的每个条件应取到的各种可能的值。
-判断/条件覆盖,同时满足判断覆盖条件覆盖。
-条件组合覆盖,每个判定中各条件的每一种组合至少出现一次。
-路径覆盖,使程序中每一条可能的路径至少执行一次。
标签:时间 用户需求 项目 故障 逻辑 inf com 正交 需要
原文地址:https://blog.51cto.com/14234228/2507341