一、完整的测试用例
一个完整的测试用例不止是测试点,它有以下要素(可以补充其它的):
- 用例编号:项目-模块-编号
- 用例标题:预期结果(测试点)
- 模块/项目:所属项目或模块
- 优先级:表示用例的重要程度或者影响力P0 ~ Px(P0最高)
- 前置条件:要执行此条用例,有哪些前置操作。
- 测试步骤:描述操作步骤。
- 测试数据:操作的数据,没有的话可以为空。
- 预期结果:期望达到的结果。
下面是结合测试用例设计方法来设计完整的测试用例设计,测试用例设计方法的介绍:黑盒测试的测试用例设计方法(很全!!!) - 掘金 (juejin.cn)
二、等价类划分法
针对:需要有大量数据测试输入,但是没法穷举测试的地方。
典型代表:页面的输入框类测试。
(一)验证某城市电话号码正确性
要求:
- 区号:空或者是三位数字。
- 前缀码:非"O"且非"1"开头的三位数字。
- 后缀码:四位数字。
设计测试用例:
- 需求:就是上面的要求。
- 划分有效和无效等价:分为三个板块来划分。
在列有效数据的时候,保证三个板块同时满足。
在列无效数据的时候,保证当前板块不满足,而其它板块满足,这是因为无效数据的焦点是当前板块。如果它不满足多个板块,那么测试的时候我们就不知道到底是哪个板块不满足。
- 测试用例:罗列测试用例的时候有一条口诀:正向,一条用例覆盖多条;负向,每一条都是测试用例;对于负向测试用例,要保证测试用例单独覆盖我们想要测试的点。
二、边界值法
使用步骤:
- 明确需求
- 确定有效和无效等价类
- 确定边界范围值
- 提取数据编写测试用例
有了边界值法,对于确定有效和无效等价类我们不再考虑位数以及规则,这由边界值法来考虑。
使用场景:
- 在等价类的基础上针对有边界范围的测试数据输入的地方(重点关注边界)。
- 常见词语描述:大小、尺寸、重量、最大、最小、至多、至少等修饰词语。
- 典型代表:有边界范围的输入框类测试。
(一)QQ校验
要求:6~10位自然数
- 明确需求:即要求。
- 划分有效、无效等价:
- 有效:自然数
- 无效:非自然数
- 确定边界范围:
- 上点:6位、10位
- 离点:5位、11位
- 内点:8位
三、判定表法
适用场景:有多个输入条件,多个输出结果,输入条件之间有组合关系,输入条件和输出结果之间有依赖(制约)关系;判定表一般适用于条件组合数量较少的情况(比如4个条件以下)。
步骤:
- 明确需求
- 画出判定表
- 列出条件桩与动作桩
- 填写条件项,对条件进行全组合
- 根据条件项的组合确定动作项
- 简化、合并相似规则
- 根据规则编写测试用例
(一)订购单检查
要求:
- 如果金额大于500元,又未过期,则发出批准单和提货单。
- 如果金额大于500元,但过期了,则不发批准单与提货单。
- 如果金额小于等于500元,则不论是否过期都发出批准单和提货单。
- 在过期的情况下不论金额大小还需要发出通知单。
(1)需求:上面的要求。
(2)判断表:
(3)测试用例
四、场景法
场景法主要用于设计业务用例。
(一)ATM 取款
- 流程图
- 根据流程图设计测试用例
将每一个分支看作一个测试用例。