测试人员在需求评审过程中要:
- 确认自己对需求理解清晰, 不存在疑惑
- 确认需求文档完整, 准确, 能够为后期测试工作所使用
- 对需求中不合理的地方提出自己的修改建议
(2).测试计划与测试方案
测试计划是指描述要进行测试活动的范围, 方法, 资源和进度的文档. 测试计划侧重在“计划”二字. 其核心内容包含但不限于以下:
- 测试范围与目标
- 角色与职责
- 进度与资源
- 风险与应对
- 准入准出标准
测试计划一般由测试组长, 测试经理负责编写, 也有可能有测试工程师编写.
测试方案是从技术的角度去分析需求, 在方向上明确要怎么测, 分析结果侧重点在于测试策略与技术实现. 测试方案侧重在“方案”二字, 其核心内容包含到不限于以下:
- 策略与方法
- 环境
- 工具的选择
(3).测试用例设计
测试用例(Test Case)是为了实施测试而向被测试的系统提供的一组集合,这组集合包括:测试环境、操作步骤、测试数据、预期结果等要素。
其实, 测试用例就是一份编写了要测哪些内容的文档. 测试用例表达要清除, 无二义性; 用例可操作性强; 用例的输入与输出明确.
用例是测试人员根据需求进行设计的, 设计方法有: 等价类划分法, 边界值法, 判定表法, 正交法, 场景法, 错误推测法, 基于需求设计.
(4).测试用例评审
测试用例评审是指, 测试人员测试好测试用例后, 需要进行评审, 检查用例设计是否合格, 是否能够最大程度上覆盖用户需求.
(5).执行用例
测试用例评审通过, 测试人员就可以根据测试用例对开发提交的代码进行测试了. 并将测试结果与用例中的预期结果进行对比, 并详细记录.
(6).缺陷跟踪及报告产出
缺陷跟踪, 是指测试未通过提交的Bug, 开发需要修复Bug, 再次提测. 测试人员要继续测试, 如果不通过还要再次提Bug, 知道测试通过. 这个过程就是缺陷跟踪. 最后产出报告.
2.等价类划分法
2.1 等价类概念与分类
# 等价类
在所有测试数据中, 具有某种共同特征的数据子集即为等价类
# 等价类分类
- 有效等价类
- 无效等价类
2.2 等价类划分法解决的问题
# 解决的问题
划分等价类可以将测试集合科学的从无穷大减少到有限小, 让测试工作从穷举测试中解放出来, 大大减少测试用例数量, 提升测试效率.
2.3 等价类划分法设计测试用例步骤与应用场景
# 步骤:
1.需求分析
2.划分等价类
(1).有效等价类
(2).无效等价类
- 规则(需求本身出发)
- 长度需求
- 类型规定
- 是否为空(必填项检查)
- 是否可重复输入
3.设计用例
# 典型应用场景: 带有输入框的测试
2.4 案例实战 — QQ号注册网站账号
# 根据以下需求, 利用等价类划分法基于测试用例模板设计测试用例
# 需求:
使用QQ号注册网站账号, QQ号要求: 6-10位自然数, 同一QQ号不能重复注册
# 用例设计步骤
1.分析需求
2.等价类划分(见下表)
- 有效等价类
- 无效等价类
3.设计用例(见下图)
有效等价类 | 有效数据 | 无效等价类 | 无效数据 |
---|---|---|---|
6-10位自然数 | 1234567 | 小于6位自然数 | 12345 |
大于10位自然数 | 12345678912 | ||
6-10位字母 | abcdefg | ||
6-10位汉字 | 只因你太美了 | ||
6-10位符号 | !@#$%^& | ||
不填写 | |||
重复输入 | 1234567 |
2.5 案例实战 — 新浪邮箱登录
# 根据以下需求, 利用等价类划分法基于测试用例模板设计测试用例
# 需求:
新浪邮箱登录, 要求输入(邮箱名)@sina.cn和密码进行登录
邮箱名要求:4-16位字符, 支持英文, 数字, 下划线(不能全是数字或者下划线)
密码: 6-18位字符
# 等价类划分法设计测试用例步骤:
1.需求分析
2.等价类划分:(见下表)
- 有效等价类
- 无效等价类
有效等价类 | 有效数据 | 无效等价类 | 无效数据 |
---|---|---|---|
4-16位英文 | abcd | 小于4位英文 | abc |
4-16位英文数字组合 | abc1 | 大于16位英文 | AbcdefAbcdefAbcdefg |
4-16位英文下划线组合 | abc_ | 4-16位纯数字 | 1234 |
4-16位数字下划线组合 | 123_ | 4-16位纯下划线 | |
4-16位英文数字下划线组合 | ab1_ | 4-16位汉字 | 你好中国 |
4-16位符号 | !@#$ | ||
不输入邮箱 | |||
输入未注册正确邮箱 | abcd26652@sina.com |
有效等价类 | 有效数据 | 无效等价类 | 无效数据 |
---|---|---|---|
6-18位字符 | abcdef | 小于6位字符 | abcde |
大于18位字符 | Abcdefabcdefabcdefg | ||
6-18位非字符_符号 | !@#$%& | ||
6-18位非字符_汉字 | 你好我的祖国 | ||
不输入密码 |
测试用例设计
# 测试用例设计:
由于存在两个输入框, 对两个输入框进行等价类划分, 每个输入框都有自己的有效等价类和无效等价类, 此时我们要考虑如何进行组合, 来设计测试用例
可能进行的组合如下:
用户名 密码 预期结果
有效 有效 登录成功
有效 无效 登录失败
无效 有效 登录失败
无效 无效 登录失败
但基于测试的原则, 我们想确定登录失败时, 是由于用户名和密码之间谁的非等价类导致的登录失败, 所有最后一种组合(用户名无效,密码无效)不需要进行测试, 即使结果为登录失败, 也无法确定是谁导致的登录失败. 所以采用以上三种进行测试用例设计.
3.边界值法
3.1边界值法概念及存在的意义
# 1.边界值法概念
边界值法设计测试用例, 是对输入或输出的边界值(有效等价类和无效等价类的界限)进行测试的一种黑盒测试方法.
# 2.边界值法存在的意义:
测试经验表明错误往往会发生在输入或输出范围的边界上, 所以边界值法是对这些边界进行测试, 是对划分等价类法的一种补充.
# 3.边界值的概念(如下图:)
- 上点: 边界上的点(符合条件的边界点)
- 内点: 边界内的点
- 离点: 离边界最近的左右两点
3.2两位数加法计算器案例
# 需求:
一个可以计算两位数内的加法计算器
# 确定边界值(如下图):
两位数取值范围 | 数学区间表示 | 上点 | 内点 | 离点 |
---|---|---|---|---|
x >= -99, y <= 99 | [-99, 99] | -99, 99 | 20 | -100,-98, 98, 100 |
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!
9 | [-99, 99] | -99, 99 | 20 | -100,-98, 98, 100 |
[外链图片转存中…(img-HJzHvHFi-1719270407892)]
[外链图片转存中…(img-oajeAg17-1719270407893)]
[外链图片转存中…(img-wS0N3UaC-1719270407894)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!