测试用例
用例:用户使用的案例。
测试用例:(模拟用户使用情景,进行测试)是为测试项目而设计的执行文档。
测试用例的作用:
- 防止漏测
- 实施测试的标准:测试人员不仅要关注功能是否符合,还需要关注用户使用的体验感等
测试用例的的编写格式,如下图所示:
- 用例编号:该用例的唯一标识符。格式:项目_模块_编号
- 用例标题:该用例的测试场景。格式:预期结果(测试点)
- 项目/模块:该用例是属于哪个项目/模块的。格式:所属项目或模块
- 优先级:表示用例的重要程度或影响力。格式:P0~P4(P0最高,即用户使用频率最高的功能)
- 前置条件:执行此条用例有哪些前置操作
- 测试步骤:执行此条用例如何去操作
- 测试数据:执行此条用例所需要使用的数据,没有可以为空
- 预期结果:期望达到的结果
测试用例编写案例
练习如下图:
参考答案如下图:
等价类
解决数据过多的问题
在无穷多的数据中,有效数据中只取其一、无效数据中只取其一,最关键的是符合某种特征的集合
练习如下图:
参考答案如下图:
这里重点关注类型、长度和规则。
适用场景:针对有大量数据测试输入,但是没法穷举测试的地方。其中最经常见的是页面的输入框类测试
- 输入框
- 下拉列表
- 单选复选框
重点:
1、正向用例:一条尽可能覆盖多条
2、逆向用例:每一条数据,都是一条单独用例。
边界值
解决边界位数限制问题
边界范围节点:选取正好等于、刚好大于、刚好小于边界的值作为测试数据
- 上点:边界上的点(正好等于)
- 离点:距离上点最近的点(刚好大于、刚好小于)
- 内点:范围内的点(区间范围内的数据)
步骤:明确需求 -》 确定有效等价和无效等价类 -》 确定边界范围值 -》 提取数据编写测试用例
练习如下图:
参考答案如下图:
边界值优化:将7个优化位5个
- 上点:必选(不考虑区间开闭)
- 内点:必选(建议选取中间范围)
- 离点:开内闭外(考虑开闭区间,开区间选择内部离点,闭区间选择外部离点)
使用场景:
- 在等价类的基础上针对边界范围内的测试数据输入的地方(重点关注边界)
- 常见词语描述:大小、尺寸、重量、最大、最小、至少、至多等修饰词语
- 典型代表:有边界范围的输入框测试
面试题:最常用的用例设计方法有哪些?–等价类、边界值
判定表法
适合条件组合数量较少的情况(比如4个以下)。当超过4个时,就不符合覆盖所有条件,应采用正交法来解决
等价边界值分析法主要关注单个输入类条件的测试,并未考虑输入条件的各种组合、输入条件与输出结果之间有相互制约关系
定义:以表格的形式表达多种条件逻辑判断的工具。主要由如下组成:
- 条件桩:无关次序,列出问题中的所有条件
- 动作桩:排序没有约束,列出问题中可能采取的操作
- 条件项:列出条件对应的取值,所有可能情况下的真假值
- 动作项:列出条件项的、各种取值情况下应该采取的动作结果
以案例:验证”若用户欠费或关机,则不允许主被叫”功能的测试:
所得出的规则:
- 判定表中贯穿条件项与动作项的一列就是一条规则
- 假设由n个条件,每个条件的取值有两个(0,1),全组合由2的n次方个规则
设计用例的步骤:
- 明确需求
- 画出判定表:列出条件桩和动作桩、列出条件项并将填写的条件进行全组合、根据条件项的组合确定动作项、简化合并相似规则
- 根据规则编写测试用例
练习如下图:
参考答案如下图:
场景法
根据实际的应用场景,测试人员一般优先测试业务用例
通过流程图来表达程序或业务的走向,其作用如下:
- 通过看懂流程图来设计业务用例
- 当需求文档信息不全时,能根据需求梳理出流程
场景法也可以叫做流程图法,通过流程图来描述用户的使用场景,然后覆盖流程路径来设计测试用例。其所具有的意义:
- 用户使用角度:用户平时使用的不是单个功能,而是多个功能组合起来一起使用
- 测试人员角度:平时测试的都是单个功能点进行测试,容易忽略多个功能的组合测试
错误推荐法
应用场景:当项目用例都执行完毕,且BUG修复完成,离上线还有一段时间,在这段时间中可是使用错误推荐法复测主要业务或测试未覆盖的功能。
先保证优先级高的业务流程正常,优先级低的业务上架以后慢慢测