一 目标
结合公司的项目情况制定合理的测试流程,提高测试效率和产品质量。核心还是要加强项目成员之间的沟通,弱化文档。
二 测试流程说明
三 测试流程
- 需求评审(可选)
参与人员:开发,测试,设计,产品
并不是所有的项目都要进行需求评审,可对适当的需求进行合适的需求评审。
需求评审过程中,开发从技术角度来分析实现方案,实现难易程度。设计从交互角度给出适当的建议,有没有不合理的交互流程,是否存在可优化的地方?测试从用户角度来给出产品逻辑上是否存在不合理的建议。
在需求评审的结束之后,明确相关人员的职责,评估设计,开发,测试周期,制定项目计划
项目计划内容:项目成员职责,项目进度计划
输出:项目计划,功能列表
- 测试计划
根据项目计划及开发人员工期安排,制定测试计划。
测试计划内容:
引言:目的、背景、范围、定义
测试内容:测试功能清单
测试规则:通用规则,测试方法、测试要点、测试工具
测试环境:硬件环境、软件环境、特定测试环境要求
项目任务:测试规划,测试设计,测试执行准备,测试执行,测试总结
文档输出:测试计划
- 测试人员根据需求设计编写测试用例
用例管理用工具:
1) Excel:便于编写和维护,工作效率高。不便于管理
2) 华为云:编写不方便,便于管理
文档输出:测试用例
- 用例评审(可选)
参与人员:项目成员全部参与(产品,开发,测试)
目的:确认细节规则和测试结果的准确性,避免功能点遗漏
根据项目大小或项目时间决定是否需要进行用例评审,可通过邮件发送,或者开评审会。
- 开发人员开发完成后进行自测,自测通过后提交测试版本给测试人员,并提供测试环境。
版本控制:一轮测试结束后,开发人员将bug修复后提交新的版本给测试人员。
输出:接口文档,测试环境,测试数据
- 测试人员执行测试用例,提交缺陷,跟踪缺陷至缺陷关闭
测试内容:
1)功能测试(app,后台),核心业务流程,功能完整性,需求覆盖性,体验性能。
2)兼容性测试,多个测试平台覆盖多机型。
3)接口测试,权限处理,状态约束,关系约束
4)性能测试,压力测试,并发测试
5)系统测试,上线
测试工具:
1) 兼容性测试:免费测试平台
2) 接口测试:
a)fiddler(抓包工具,可模拟弱网测试,打断点)
b)Postman,接口测试
c)jmeter(接口测试,可以做压力测试,并发测试)
文档输出:缺陷记录,测试数据
- 缺陷管理:
缺陷流程:
缺陷管理工具:华为云-缺陷管理
Bug内容:编号,功能模块,缺陷描述,截图,优先级,严重程度,版本号,处理人,状态,开始时间,结束时间,环境(线上,测试)
缺陷状态:新建,已处理,已拒绝,已解决,已关闭,延迟处理,重复缺陷
缺陷处理流程:
1) 开发认为是缺陷的处理
测试人员发现并提交缺陷,由开发人员进行处理,开发人员修改了这个缺陷就会将这个缺陷的状态置为已解决状态让测试人员进行验证。测试人员对这个已修复的缺陷进行回归测试,如果回归测试通过,则将缺陷状态置为已关闭,如果回归测试没有通过,则将缺陷状态置为新建状态等待开发再次修复,直到修复成功。
2)开发认为不是缺陷的处理
测试人员发现并提交缺陷,由开发人员进行处理。但是开发人员认为不是缺陷,则将该缺陷的状态置为已拒绝状态并提交回测试人员,可简单描述拒绝原因。测试人员如果认为确实误报了缺陷,则直接关闭,如果经过测试、开发沟通认为是bug,则测试人员重新打开(新建)让开发人员继续修改,开发人员修复这个缺陷置为已解决,提交给到测试人员进行回归测试,直到回归测试通过为止。
- 开发认为重复缺陷的处理
测试人员发现并提交缺陷,由开发人员进行处理。但是开发人员认为是重复缺陷,则将该缺陷状态置为重复缺陷,测试人员一定要确认该缺陷是否确实重复,如果确实是同一个缺陷,则将重复的缺陷直接关闭。如果不是同一个缺陷,则重新打开该缺陷,继续跟踪。
- 延迟缺陷的处理
测试人员发现并提交缺陷,由开发人员进行处理。但是因为项目和时间等因素,某些缺陷无法在项目周期内完成,则需要进行延迟处理(备注:延迟处理的缺陷本身被确定为有效缺陷),对于延迟的缺陷需要经过开发、测试、项目经理、客户代表共同认可方可延迟。对于延迟的缺陷,置状态为延迟处理。到了下一个版本,测试人员就应该把所有延迟处理状态的缺陷重新置为新建状态,让开发人员继续修复。
6,测试结束—测试报告
经过两到三轮或四轮的测试后,直到没发现新的问题。或暂时无法解决,或不紧急的问题,跟项目负责人确认后,可以通过。
测试报告内容(重点):
1) 测试项目的版本,测试项目内容的概述
2) 测试用例的执行情况
3) 测试结果的统计:总bug数,bug级别分类统计,已解决数,遗留数。
4) 测试评估:基于软件缺陷的质量评估,写明在当前版本,已实现的功能和未实现的功能。
- 上线后的线上测试
上线后,为避免因环境因素产生的一些问题,可视情况进行通测或者关联功能测试