测试过程和测试用例
一、测试过程(双V模型)
1、单元测试(UT,Unit Test)
- 特点:无用户参与的测试
- 测试方法:主要是白盒测试
- 参照的文档:详细设计 LLD,Low Level Design
- 考察范围(测试内容):被测试单元内部的数据结构,流程控制,异常处理
- 评估的标准:逻辑覆盖率
2、集成测试(IT,Integration Test)
- 测试方法:主要是灰盒测试
- 参照的文档:概要设计 HLD,High Level Design
- 考察范围(测试内容):模块组装以后的功能,以及模块间接口的数据传递
- 评估的标准:接口覆盖率
3、系统测试(SRS,System Requirements Specification)
- 测试方法:主要是黑盒测试
- 参照的文档:需求规格说明书 SRS,System Requirements Specification
- 考察范围(测试内容):对于需求规格的符合程度
- 评估的标准:测试用例对于需求的覆盖率
4、回归测试
-
概念:回归测试就是在研发修改缺陷后,对于修复的内容进行的验证的测试,回归测试可以发生在任何测试阶段。
-
测试目的:验证修改的内容本身是否正确、测试变更是否会对系统产生其他影响。
-
测试流程
- 确定回归测试版本
- 确定回归测试策略
- 在回归的版本发布后,执行回归测试
- 回归测试不通过,打开缺陷报告单
- 回归测试通过,关闭缺陷报告单
-
回归测试策略
-
完全重复测试:再次执行全部测试用例
-
选择性重复测试
覆盖修改法:仅测试修改的内容
周边影响法:除了测试修改的内容外,还要测试可能产生影响的其他模块
指标达成法:类似单元、白盒测试,设置一个指标,再进行用例的设计和测试
-
5、测试的主要阶段
-
计划阶段
- 制定测试计划:测试排期、测试人员、测试环境等。
- 输出物:测试计划文档,每个阶段要完成的内容。
-
设计阶段
- 制定测试方案:测试范围、测试场景设计等。
- 输出物:测试方案文档。
-
实现阶段
- 编写测试用例 test case。
- 测试用例概念:设计一种情况,软件程序在这种情况下,必须能够运行并且达到程序设计的执行结果。
- 输出物:测试用例、测试规程。
-
执行阶段
- 执行测试用例,提交缺陷报告,提交测试报告
- 输出物:缺陷报告,测试报告。
三、测试用例八要素
1、用例编号
- 特点:唯一性
- 通用规则:项目或产品名-测试的阶段-测试的模块或需求[-子模块](如果有)-数字编号(一般3位数字)
- 例子:WeChat-ST-mine-pay-001
2、测试项
- 描述测试的对象
- 约定
- 单元测试:被测试的函数的名称
- 集成测试:拼装的模块、被测试的接口
- 系统测试:对应的需求(例如:会员注册)
3、用例标题
-
特点:唯一性
-
内容:用一句话概括描述用例的内容,一般包含测试用例的目的和出发点
-
例子
-
正向用例:用户名和密码符合规则注册成功
-
反向用例:用户名长度小于下限,注册失败;密码包含空格,注册失败
-
4、重要级别
- 表示用例的重要程度
- 一般的划分
- 高:核心业务,重要特性,使用频率高的功能
- 中:介于高和低之间的模块、特性
- 低:使用频率较低,对于系统的主要业务影响不大的模块
5、前置条件
- 定义:按照测试步骤执行测试用例前要达到的条件
- 如果不能满足这些条件将造成:后面的测试步骤无法执行或者执行后无法得到预期的结果。
6、测试输入
- 测试过程中需要使用的外部信息(数据,文件,消息,数据库记录等)
- 特点:测试用例中应该要设置具体的数据
7、测试步骤
- 当前的测试必须要执行的步骤
- 需要明确给出每个步骤的操作
8、预期结果
- 当前的测试依据需求应该输出的结果
- 一般包含:界面的相应,返回值的内容