一、测试基础
质量模型的重点五项:
1)功能
2)性能
3)兼容
4)易用
5)安全
测试流程:
1)需求评审
2)测试计划
3)用例设计
4)用例执行
5)缺陷管理
6)测试报告
1、测试分类
1)按阶段划分
- 单元测试:针对源代码进行测试
- 集成测试:针对接口进行测试
- 系统测试:针对功能和非功能进行测试
- 验收测试:内测、公测
2)按代码可见度划分
- 黑盒:不关注源代码,针对功能测试
- 灰盒:针对接口进行测试
- 白盒:针对源代码进行测试
2、测试步骤
- 需求分析
- 测试计划编写
- 测试用例编写
- 测试用例执行
- 缺陷管理
- 测试报告
二、测试用例设计方法
1. 等价类划分法
等价类:具有某种共同特征的数据集合
有效等价类:满足需求的数据集合
无效等价类:不满足需求的数据集合
正向:一条测试用例尽可能多的覆盖未被覆盖的有效等价类;
逆向:一条测试用例只能覆盖一个无效等价类;
- 等价类细节:
(1)长度
(2)类型
(3)组成规则
(4)是否为空
(5)是否区分大小写
(6)是否重复
(7)是否去除空格
适用场景:需要有大量测试数据输入,但是没法穷举测试的地方
典型代表:页面的输入框测试
2. 边界值法
作用:(有序、有范围)等价类的补充
上点:边界上的点
内点:范围内的点
离点:距离边界值最近的点
优化等价类取值: 与上点属于同一等价类的离点可以不取值测试(对于小数,没有离点,不用取)
如(-99,99]上点: -99、99 内点: 50,离点: -100、-98、98、100,其中-100和98可以不测试
等价类的每个边界都要作为测试条件。
3. 判定表法
使用场景:有多个输入条件,多个输出结果,输入条件之间有组合关系,输入条件和输出结果之间有依赖(制约)关系
判定表一般适用于条件组合数量较少的情况(比如4个条件以下)
- 判定表组成
条件桩:问题的所有条件
动作桩:问题的所有输出
条件项:针对条件项的取值
动作项:条件项的各种取值情况下的输出结果 - 步骤
(1)列出所有条件和动作项
(2)填写条件项
(3)填写动作项
(4)简化判定表
4. 流程图法
业务流程测试需要使用流程图法,一般每个流程用一个测试用例验证。
先测业务,再测试单功能、单模块。
5. 场景法。
用流程图描述用户的使用场景,然后通过覆盖流程路径来设计测试用例。
按照正确业务流程实现的一条操作路径(模拟正确的操作流程)
导致程序出现错误的操作流程(模拟错误的操作流程)
6. 错误推断法
通过经验推测系统可能出现的问题。
测试用例方法的选择:
- 具有输入功能,但输出之间没有组合关系 → 等价类划分
- 输入有边界,如长度、类型 → 边界值补充
- 多输入、多输出、输入与输入之间存在组合关系、输入与输出之间存在依赖和制约关系 → 判定表
- 多个功能的组合测试 → 场景法
- 补充测试用例 → 错误推断法
三、缺陷
1. 缺陷的判定标准
- 软件未实现需求说明书中明确要求的功能 – 少功能
- 软件出现了需求说明书中指明不应该出现的功能 – 功能错误
- 软件实现的功能超出需求说明书指明的范围 – 多功能
- 软件未实现需求说明书中虽未指明但应该实现的功能 – 隐形功能错误
- 软件难以理解,不易使用,运行缓慢,用户体验不好 – 不易使用