
1 总则
制定本规范的目的是为了明确测试部工作职责、规范产品测试过程中的各项活动、明确软件测试过程中参与团队的工作要求,促进各团队之间的工作协同,确保各产品的产品质量及发布进度。
2 部门职责
1.
2.
2.1.负责产品进度监控,及时跟踪预警
根据公司各产品线上线发布时间计划,协同销售部、产品规划部、研发部、运营部制定平台功能研发计划、平台资质认证计划、平台生态建设计划。对计划执行进展进行监控、汇报,并提出风险预警。
2.2.负责产品质量测试,提升产品质量
测试部负责建立测试流程及规范,协调测试资源,实施测试工作,以有效确保产品质量。部门工作职责主要包括如下5个方面:制定软件测试计划、设计与编写测试策略、搭建测试执行环境、实施测试、进行测试总结。
2.2.1.制定软件测试计划
参与产品需求评审,根据产品上线计划要求,与产品规划部、研发部、运营部协同沟通,对将要进行的测试工作进行规模估算并编制软件测试计划,指导和督促测试人员完成各阶段的测试工作。
1.对需求规格说明书仔细研究并从测试角度评估完整性、明确性、可行性。
2.将要测试的产品分解成可测试的单元。
3.为每个测试单元确定采用的测试技术。
4.为测试阶段及其活动制定计划。
2.2.2.设计与编写测试方案
结合软件测试计划,组织编制测试方案,主要包括所需测试环境、工具、测试软件;并针对测试需求编写测试用例,从测试的角度对被测对象的功能和各种特性的细化和展开,包括测试输入、测试步骤、预期结果等内容。
2.2.3.搭建测试执行环境
根据测试方案要求,与研发部、运营部沟通确定测试工作执行所需的软硬件环境,安排和协调测试设备、环境、工具等准备工作。
1.提交环境需求至研发部、运营部,跟进研发部、运营部按计划完成软硬件、网络环境的资源配置。
2.对所提供的硬件环境、软件环境、网络环境进行检查,确认资源配置的有效性。
2.2.4.实施测试
根据测试计划和测试用例,结合产品特性,围绕单元测试、集成测试、冒烟测试、系统测试、回归测试、用户测试、验收测试等环节展开测试工作。
1.跟进研发部单元测试、集成测试工作进度,对存在的延期风险及时预警。
2.在研发部完成单元测试、集成测试后,在计划规定的时间内,完成具体的测试工作:测试、提交缺陷、跟踪缺陷、验证缺陷,直到提交的缺陷被关闭或允许保留。过程中,协助开发人员进行缺陷定位,验证缺陷修复情况,反馈缺陷处理结果。
3.组织开展用户测试及验收测试。
4.实施过程中,对缺陷进行有效管理:对缺陷进行分类、优先级制定、等级确定等。制定缺陷管理流程,跟进研发部缺陷解决进展。
5.按照测试退回机制、报告机制要求,管理测试工作。
6.提交测试报告、缺陷记录。
2.2.5.进行测试总结
测试完成、版本封板上线前后,组织研发部开展本阶段测试工作总结,对测试过程及结果中发现的问题和缺陷进行经验教训总结,为下一步纠正软件存在的质量问题提供组织过程资产。
3 组织结构及岗位职责
3.
3.1.部门组织结构
测试部下设部门主管1名、测试工程师1名、开发归口测试员1名、业务测试员4名。其中,开发归口测试员由研发部开发人员兼任,业务测试员由销售部、产品规划部、运营部人员兼任。
3.2.岗位职责
3.2.1.测试部主管
1.推动测试工作流程化、规范化。
2.负责产业业务需求与测试任务的对接与安排。
3.制定总体测试计划,对测试进度、测试质量进行监控,保证测试工作按质、按计划实施。
4.与产品规划部、研发部、运营部进行协调和沟通,协调测试资源,确保测试工作沟通畅通,发现的问题能够及时解决。
5.对测试过程进行跟踪监控,对软件质量进行控制。
6.管理团队成员,促进团队高效、协作的工作,确保测试工作顺利推进。
7.负责监控、跟踪、预警各产品线研发、推广工作的执行进度。组织各产品线的阶段性评审和验收。
3.2.2.测试工程师
1.协助质控主管制定规范化的测试流程、共同推动测试工作规范化。
2.参与测试环境、测试工具的搭建及管理。
3.根据软件需求进行测试需求分析、测试用例设计并保证足够的覆盖率。执行测试用例,提交缺陷报告,与产品团队、研发团队、运营团队进行有效沟通,跟踪缺陷处理流程。
4.服从团队管理及资源调配,保质、保量、按时完成测试任务,对所负责的子系统、模块的测试质量负责。
5.设计基于业务流的测试用例,指导并协同业务测试员进行用户验收、验收测试 。
6.提供测试工程师业务培训和指导、答疑等。
7.输出测试报告、缺陷清单,编写用户手册,协助质控主管进行测试总结。
3.2.3.开发归口测试员
1.在版本部署前对系统进行整体测试,确保整体流程、核心功能无缺陷。
2.提交版本部署申请,跟踪研发部、运营部,确保在规定时间内完成版本部署。
3.协助测试工程师搭建测试执行环境。
4.协助测试工程师跟进缺陷在研发内部的执行进度。
3.2.4.业务测试员
1.参与产品需求评审,从业务角度对产品需求提出建议。
2.参与用户测试、验收测试,并按测试工程师要求提交测试反馈。
4 工作程序
4.
4.1.工作流程
测试工作整体流程如下:
4.1.1.需求分析阶段
测试部工作流程如下:
1.与产品经理对接,获取产品需求规格说明书、原型图等。
2.对需求进行分析、整理,熟悉,明确具体测试的功能点及测试的范围。
3.根据产品计划、版本发布时间、测试范围的大小、功能点的复杂度,制定合理的测试计划。
4.与产品经理、研发经理针对测试计划是否合理、测试内容是否全面进行评审,并就产品研发、上线时间计划达成统一意见。
部门间协同配合要求如下:
1.产品经理所提供的产品需求文档要求功能需明确、具体,且明确产品的质量及性能需求,界面化产品须提交产品原型图。产品需求须在公司层面执行需求评审,评审通过后,产品研发部、测试部可全面开展下一步工作。
2.产品整体进度计划、测试计划一旦确定,研发部负责研发内部的进度推进工作,如需延期,研发部需提交公司书面申请。
3.产品经理负责产品需求的归口。需求评审通过后的需求调整,由产品经理负责组织研发部、测试部进行变更评估。
4.1.2.开发编码实现阶段
测试部工作流程如下:
1.依据需求文档、测试计划设计、编写测试用例。编写测试用例过程中若发现需求与设计中的问题后,与产品经理、研发团队及时沟通确认。
2.制定测试策略、定义缺陷严重程度和缺陷类型、定义测试完成标准。
3.协调研发部、运营部准备测试环境的搭建。
部门间协同配合要求如下:
1.产品研发进度由研发部内部管控,以确保研发进展按计划执行。并按约定的周期,向测试部定期提交产品研发进度数据;测试部负责进度的监督、预警、汇报。
2.运营部需按照测试部、研发部所提的环境需求及时间要求,做好资源预备。
4.1.3.测试执行阶段
产品开发完成后,依次开展单元测试、集成测试、系统测试(含冒烟测试、回归测试)、用户测试、验收测试5个环节。
| 测试环节 | 测试内容 |
| 单元测试 | 又称模块测试,对程序模块或功能模块,进行正确性检验。 |
| 集成测试 | 又叫组装测试或联合,是在单元测试的基础上进行的一种有序测试。旨在检验软件单元之间的接口关系,最终把经过测试的单元组成符合设计要求的软件。 |
| 冒烟测试 | 又叫版本验证测试,对新编译的需要正式测试的软件版本,进行大规模的测试之前,先验证软件的基本功能是否实现,该版本是否具备可测性。目的是确认软件的基本功能正常,可以进行后续的正式测试工作。 |
| 系统测试 | 冒烟测试通过后,对该版本进行的细致的系统测试。主要包括功能测试、界面测试、兼容性测试、安装测试、易用性测试、性能测试。目的是充分运行系统,验证系统是否都能正常工作并完成设计的要求。 |
| 回归测试 | 对软件版本的新版本进行测试时,重复执行上一个版本测试时的用例。在发生修改后重新测试新版本的软件以保证修改的正确性,以及修改后没有引发新的错误。回归测试是开发人员修改已提交的bug后,测试人员进行再一轮的测试,主要是检测bug是否被修复,bug相关功能是否被影响。 |
| 用户测试 | 系统测试到一定程度后,由业务部门用户对系统进行测试。 |
| 验收测试 | 产品发布之前所进行的软件测试活动。确保该版本已完成所有缺陷修复。 |
流程说明如下:
1.开发人员负责版本部署于预生产环境之前的单元测试、集成测试。集成测试完成后,归口到研发归口测试员进行研发环节的整体测试,整体测试通过后,向研发部、运营部提交版本部署申请并跟踪直至部署完成。部署完成后,书面邮件通知测试工程师可正式进行版本测试。
2.测试工程师收到通知后,执行冒烟测试。如冒烟测试不通过,则列出缺陷回退至研发归口测试员,并抄送各相关人员。开发团队需对缺陷进行完善并再次进行单元测试、集成测试。集成测试完成后,研发归口测试员再次执行步骤1;
3.冒烟测试通过后,测试工程师进入系统测试环节:按照测试用例执行测试;提交缺陷记录至开发人员直至本轮测试完成。开发人员对本轮所有缺陷完成后,执行步骤1进行新版本发版部署。测试工程师对开发人员已经修改的缺陷进行跟踪管理,执行回归测试;提交测试报告;
4.系统测试到一定程度后,测试工程师通知业务测试员进行用户测试。业务测试员根据要求提交测试意见。测试工程师进行意见的分析及汇总后,统一提交至研发部;
5.所有缺陷修复或关闭后,测试工程师、业务测试员执行验收测试。验收测试通过后,该版本可正式上线部署。
部门间协同配合要求如下:
1.运营部负责预生产环境的搭建。测试部负责在预生产环境中完善测试执行环境,开发人员、运营人员协助。
2.研发部负责执行预生产环境的版本部署。版本部署后,研发部不允许修改,直至本轮测试结束。如确实需要修改,必须事先征得测试部同意。
3.系统测试期间,测试工程师所提交的缺陷清单,研发部需尽快落实责任人及确定完成日期,研发部对开发进度负责。
4.1.4.产品发布上线阶段
产品发布上线后,对测试结果进行分析,综合评估,主要描述测试中各个等级的缺陷数量,缺陷分布情况,缺陷修改情况、回归测试提交缺陷数量等情况,如有必要,组织召开经验总结会。
4.2.工作约束
4.2.1.对测试人员的约束规范
1.开发归口测试员在提交测试之前,应进行整体测试,确保提交测试的功能确定无阻塞性问题,流程能跑得通,能正常进行测试工作。
2.测试人员测试过程中,必须依据所有的BUG都体现在测试报告中的原则,保证所发现的BUG都已添加到测试报告中。
3.测试人员测试完毕后,必须通知相关的负责人及程序人员。
4.测试人员必须在测试计划方案规定的计划时间内完成所有功能的测试。
4.2.2.对开发人员的约束规范
1.开发人员必须明确写明BUG引起的原因及解决方法,以方便以后做追溯。
2.开发人员如对测试人员所填写的BUG不理解或不能重现,可请求测试人员解释或重现,而不能直接拒绝修改。
3.在修改已提测功能时,开发人员做的任何代码上的改动(非针对明确写出的BUG时),都必须同时通知测试人员,以便进行针对性的回归测试。
