标准化QA工作流程及规范

一、流程规范
1、 需求评审:
了解需求应用场景,需求解决的问题,需求的业务逻辑和技术实现。
以下情况出现,需求评审不予通过:
1.1需求文档描述不清晰文档内容需完善细节调整
1.2文档内容混乱逻辑梳理不清很难看懂
1.3缺少流程图或原型图描述功能不清晰
对需求提出QA建议,并且对需求文档质量进行确认

2、 前后端设计评审:
重新确认时间节点:设计,开发,提测,测试,上线
明确接口文档内容难点和风险及接口逻辑。
以下情况出现,设计评审不予通过:
1.1缺少接口逻辑详细描述
1.2缺少请求参数样例及描述
1.3缺少返回参数样例及描述
1.4表结构及数据库逻辑描述不清楚
QA要对接口文档设计文档质量进行确认

3、 测试用例:
测试用例编写规范,按照模板统一维护,尽量提高覆盖率,可接受细节性调整完善,应避免较大功能点或需求遗漏,应多考虑边界值及特殊场景的情况。
QA需要与相关人员组织用例评审会,详细描述用例覆盖功能点及场景范围及时纠正完善用例,共同保证用例质量

4、 任务排期:
预估排期尽量准确,与开发项目经理沟通确认,保证服务端测试在客户端测试之前完成,与后端开发讨论合理安排测试周期
QA应保证在测试计划排期内完成相关测试任务

5、 开发阶段:
准备测试数据,创建测试场景设计策略,关注接口文档是否有调整,如有调整应及时更新相关接口用例设计。

6、 提测阶段:
及时查看提测邮件,及时确认提测事项并回执,测试开始严格按照用例开始执行。QA需要明确提测内容无误,交付产品齐全

7、 测试阶段:
按照测试计划于排期保证测试进度正常,测试出bug后要基本定位bug及原因(区分前后端)提交bug时要保证描述清晰明了,能根据描述准确复现bug,并正确分配标清bug等级,状态等
QA需保证bug准确性,并及时标明bug状态,回归后保证bug已完全修复才可关闭bug,及时推动bug解决超时未解决问题及时反馈

8、 上线阶段:
最后一轮冒烟测试完成后,保证所有bug修复完成,与需求功能保证一致,给相关开发及项目经理发送测试报告或验收报告,产品确认验收通过后,准备上线,上线后需对相关功能进行线上回归,保证线上质量。最后对项目中的问题复盘,对流程总结,总结优秀经验复盘。
QA需要监控线上产品运行情况,及时发现bug等问题,快速推动,尽快解决,对线上质量负责。
线上环境回归时,操作基本功能尽量不影响数据

二、项目进度
1、项目周报:
每周四将当前项目组内项目进度及相关时间节点汇总,发周报,内容格式按照周报模板填写,以邮件形式发送到所有研发人员及相关领导。
特殊情况及内容需要高亮标记展示在周报内

2、项目预警:
以下情况需要发项目预警邮件:
2.1相关开发及设计人员未能按照计划排期完成指定开发及设计工作任务,可能导致项目进度异常有延期风险。
2.2项目开发过程中,产品临时改需求可能导致项目有延期风险。
2.3过程中遇到预期未考虑到的因素及难度较大技术问题时有可能导致延期风险
2.4其他异常情况导致质量或进度不可控有质量或延期风险时
项目预警内容及格式需要按照模板统一维护填写,特殊情况及内容需要高亮展示


  • 测试质量
    测试行业最难的命题不是测试技术,而是测试质量。
    大家对这个场景都很熟悉:出现生产问题,解决问题,生产事故复盘、责任分配到人。

影响质量的因素是多方面的,尤其重要的是-测试方法论。

第一步,测试活动分解质量阶段

需求和技术方案评审;
测试设计;
线下测试;
线上测试;
线上监控。

第二步,每个阶段的工作,都要为质量服务

需求和技术方案评审

外部评审:测试不是被动的接受,应该和产品、开发一起脑暴,发现设计缺陷、技术风险和隐患、关联方影响等(不具备该能力的可通过内部评审进行实训锻炼);
内部评审:团队内部对技术方案进行评审、实训,找出关注点、风险点(团队能力普遍较高的可以裁减)。
目的:此阶段是质量的基石,通过测试左移,尽早发现需求设计缺陷、技术方案风险、接口设计缺陷、性能设计缺陷、关联方依赖影响,了解测试关注点,关注可测试性等问题。

测试设计

用例设计:除了对业务的理解,还需要扎实的基本功(边界值、等价类划分、正交等);
场景设计:正常场景、异常场景、补偿场景,场景流的每个关键节点都要列出检查项,如何模拟特殊场景,是一种挑战;
数据准备:测试应该提前准备好相关方案的 数据。
目的:此阶段是质量的骨架,通过测试设计,覆盖更多的测试点、模拟更多的场景、做好更充分的测试准备,为质量保驾护航,为测试赢得更多宝贵的时间。

线下测试

接口测试:需要遵循严格的接口测试规范执行,例如:必填项、取值范围、默认值、分页、单接口耗时、冗余、联动、数据落地正确性、安全性等;
单点覆盖:严格按测试用例执行,例如:功能和需求是否一致、db 数据正确性、健壮性、安全性、友好性、内存泄露等;
横向覆盖:对于一个场景,从开始到结束涉及到的关键节点,都要进行检查点覆盖,包括功能实现、数据读取、数据计算、数据写入的正确性;
纵向覆盖:正常场景、异常场景、补偿场景都要覆盖;
探索性测试:以上之外,可以凭个人经验进行探索测试;
回归测试:拉取回归测试集,并确保主流程的横向覆盖、纵向覆盖、自动化回归等;
性能测试:资源占用、耗时分析测试(如何对结果分析定位问题)。
目的:此阶段是质量的成型,通过测试设计的充分准备、线下测试的严格、立体的执行,发现和解决绝大部分问题。

线上测试

新功能测试:拉取线上快速验证测试集,并确保主流程的横向覆盖、纵向覆盖;
回归测试:拉取线上回归测试集,并确保主流程的横向覆盖、纵向覆盖;
性能测试:全链路压测
目的:此阶段是版本质量终态,线上测试主要是为了确保代码部署、生产配置、生产环境对质量的影响。

线上监控

目的:此阶段是质量补偿,快速响应和解决,降低生产事故造成的损失。

总结,质量取决于团队的能力
首先,要找到合适的方法论,其次,同样的方法论,执行效果还是取决于人的能力。所以,千万不要忽视对人的培养。

你可能感兴趣的:(标准化QA工作流程及规范)