什么是测试用例
为项目需求而编写的一组测试输入、执行条件和预期结果,以便测试某个程序是否满足用户需求
测试用例的要素
测试编号:项目_编号 或者直接就是编号
模块:当前覆盖的测试点所在的模块
测试标题:主要描述测试的目的,一般格式:输入+动作
优先级/重要级别:根据当前测试点在整个项目的重要程度来划分,分为高中低(1、2、3)
高--核心流程,中--错误异常测试点,低--兼容性界面错误
预置条件:需要满足一些前提条件,否则无法
测试步骤:具体的测试数据+动作;
1)【用户管理>>注册】(路径)
2)具体测试数据输入
3)动作
预期结果:按照操作步骤,应该有什么结果,一个步骤对应一个结果或者多个步骤对应一个结果
实际结果:执行测试的结果,通过/不通过/阻塞
用例设计方法(即黑盒测试的方法):
等价类划分法:
1)定义:把所有可能输入划分为N个子集
2)例子:用户名长度6-18位,必须是数字、字母、下划线两者或者两者以上的组合
有效等价类 | 集合A | 正例 | 无效等价类 | 集合B | 反例 | |
必须是数字、字母、下划线两者或者两者以上的组合 | 字母+数字 字母+下划线 字母+数字+下划线 数字+下划线 | A1 A2 A3 A4 | 纯字母 纯数字 纯下划线 除字母数字下划线 空 | B1 B2 B3 B4 B5 | ||
长度6-18位 | 6~18 | A5 | <6 >18 空 | B6 B7 B8 | ||
有效等价类用例 | A1A5 A2A5 A3A5 A4A5 | 无效等价类用例 | B1 B2 ..... B7 | |||
编号 | 模块 | 标题 | 预置条件 | 操作步骤 | 预期结果 | |
1 | 用户管理/注册 | 验证输入符合规则长度的字母+数字 | 用户名:xy123456 | 用户名验证通过 | ||
2 | 验证输入符合规则长度的字母+下划线 | 用户名:xing_yao | 用户名验证通过 | |||
...... | ||||||
m | 纯字母验证不通过 | qqqqqqqq | ||||
....... |
3)设计原则
划分有效和无效等价类,为每一个等价类编号
用最少的用例去覆盖最多的有效等价类(有效等价类挑组合)
针对每一个无效等价类,用一条用例覆盖(无效等价类单独使用一个)
4)使用场景:
输入项存在无穷尽的时候,一般使用等价类划分
边界值法
使用边界值对等价类进行补充,比如上面表格里有效等价类里 A5范围是6-18,以下组合里A5选的值就是:
A1A5 其中A5取6
A2A5 18
A3A5 7
A4A5 17
直接补充,不用单独写测试用例
场景法
步骤:画出流程图,每一个流程用一个用例验证即可
![](https://i-blog.csdnimg.cn/blog_migrate/0133fb54a7128cf7ef3c0ab43244945f.jpeg)
流程图编辑工具:https://www.processon.com/
正常流程:从起点开始,通过各个路径到最后节点结束
异常流程/错误流程:从起点开始,在某个节点结束或者返回上一个节点
Valid:V | ||||||
Invalid:I | ||||||
场景 | 正数 | 两边之和大于第三边 | 直角三角形 | 等边三角形 | 等腰三角形 | 预期结果 |
场景1 | V | V | I | I | I | 普通三角形 |
场景2 | I | V | 无效,不能组成三角形 | |||
场景3 | V | I | 无效,不能组成三角形 | |||
场景4 | V | V | V | I | I | 直角三角形 |
场景5 | V | V | l | V | l | 等边三角形 |
场景6 | V | V | I | I | V | 等腰三角形 |
错误推测法
基于经验、知识、直觉,从而有针对性的进行测试
因果图判定表法(例子与教学的不符,自己按自己的经验写的)
如果感到疲倦则休息,如果不疲倦且不感兴趣则跳入下一章 如果不疲倦且感兴趣且感到糊涂则重新读一遍 如果不疲倦且感兴趣且不感到糊涂则继续阅读 | ||||
疲倦 | 感兴趣 | 糊涂 | 结果 | |
Y | 休息 | |||
N | N | 下一章 | ||
N | Y | Y | 重新读一遍 | |
N | Y | N | 继续阅读 |
正交实验法
使用场景:每个条件值有多个,并且有多个条件,无法用因果图列出
正交表是已有的,L-9-3-4 四因子三状态正交表
![](https://i-blog.csdnimg.cn/blog_migrate/d2c7fda5c80f187ab4430b006112936c.png)
9:表示总共要测几次(即表格里有几行)、
3:表示每个条件项有几个值
4:表示有几个条件项
测试用例的评审
目的:评审用例的覆盖率,错写的测试用例
相关测试用例例子:
链接:https://pan.baidu.com/s/1jQnqMeScBycS-8MSUFRIoA?pwd=muz3
提取码:muz3
bug:
什么是bug?程序的漏洞或者缺陷,还有软件可以改进或者不符合需求的
bug的类型?
代码错误(功能)---功能错误、性能、安全
界面优化---界面、易用性问题
设计缺陷--建议优化的bug
bug的等级?
致命错误block
严重错误 critical
一般 major
细微 minor