测试体系建设与软件测试流程(初稿)目录1.目的32.范围33.测试过程描述43.1 测试流程图43.2 活动说明53.2.1 需求评审53.2.2 编写测试计划63.2.3测试用例设计83.2.4 测试用例执行93.2.5发布版本回归测试123.2.6版本迭代回归测试133.2.7 文档测试163.2.8 测试报告184.软件缺陷管理系统—禅道194.1 概述194.1.1 编写目的194.1.2 适用范围194.1.3 角色和职责194.1.4 禅道简介194.2 缺陷状态关系示意图204.3 缺陷流转的过程及处理204.3.1 基于禅道的项目/测试/Bug管理214.4 禅道项目管理流程图215.配置管理211.目的本文是对项目软件测试的指导性文件,对软件测试过程中所涉及到的测试理论、测试类型、测试方法、测试标准、测试流程及测试过程中涉及到的角色职责进行总体规范,以有效保证软件质量。
2.范围本文适用于所有软件测试人员。
3.测试过程描述3.1 测试流程图 需求规格说明书测试用例测试计划开发计划评审Checklist 需求评审会议评审通过评审测试版本发布执行测试用例部署测试环境提交缺陷报告修复缺陷确认缺陷是否验证缺陷不通过测试完成通过测试报告发布上线3.2 活动说明3.2.1需求评审3.2.1.1目的从源头把握软件质量,并确保开发结果与实际需求相一致,分析需求实现的可能性,功能细节描述无二义,补充需求细节,确定项目周期和时间。
3.2.1.2角色与职责测试负责人:《需求规格说明书》的编写,以及软件开发过程中《需求规格说明书》的修正;评审人员:项目经理、开发人员、测试人员等项目干系人;评审《需求规格说明书》,从全面性、完整性、正确性、一致性、可靠性方面检查《需求规格说明书》,将需求缺陷Checklist提交给产品需求人员,在评审会议上讨论,确定为缺陷后,跟踪需求缺陷直至需求缺陷验证关闭。
3.2.1.3启动标准《软件需求规格说明书SRS》编写完成3.2.1.4工作流程图3.2.1.5输入/输出输入:《需求规格说明书》输出:需求缺陷Checklist单、《需求规格说明书》定版3.2.2编写测试计划3.2.2.1目的明确测试内容、测试任务安排、测试进度、测试策略、测试资源、测试目标(上线标准)、风险控制;保持测试过程的顺畅,有效控制和跟踪测试进度,应对测试过程中的各种变更。
确认测试项、被测特征、测试任务、人员安排,以及任何偶发事件的风险。
3.2.2.2角色与职责测试负责人:负责编写测试计划根据《软件开发计划》、《需求规格说明书》编制《测试计划》,明确测试内容、测试任务安排、测试进度、测试策略、测试资源、风险控制,以便测试工作正常开展,测试计划实际编写内容参见《项目测试计划模版》。
测试计划评审:项目经理、测试人员内部评审是否交待清楚测试时间、测试资源、测试范围三要素,测试策略是否合理,测试时间、人力、资源是否留有余地等。
3.2.2.3启动标准需求评审完成,《项目整体计划》编制完成。
3.2.2.4工作流程图3.2.2.5输入/输出输入:《软件需求规格说明书》、《软件开发计划》输出:《软件测试计划》3.2.3测试用例设计3.2.3.1目的通过多种测试方法编写测试用例,以使最少的测试用例,实现最大的测试覆盖,保证软件功能的正确性,从而提升软件质量。
3.2.3.2角色和职责测试人员:负责自己的测试模块编写测试用例采用多种测试方法(如等价类、边界值、错误推测法等)编写有效的测试用例,并对遗漏/错误的测试用例进行修正。
评审:项目经理、测试人员内部评审1、是否覆盖测试需求上的所有功能点、不违背产品原型和代码设计,用例设计的结构安排是否清晰合理,有利于高效覆盖需求。
2、用例是否具有可执行性,前提条件、执行步骤和预期结果是否正确,有明确的验证方法。
优先级安排是否合理。
3、是否从用户层面来设计用户使用的场景和业务流程。
4、是否包含充分的异常测试用例。
5、是否简洁、不冗余、复用性强。
3.2.3.3启动标准需求文档评审完成且测试计划制定完成3.2.3.4工作流程图3.2.3.5输入输出输入:《软件需求规格说明书》、《软件测试计划》输出:《测试用例》、测试用例评审缺陷3.2.4测试用例执行3.2.4.1目的依据测试计划,按照测试用例对软件进行测试,验证软件功能与需求的实际匹配程度。
3.2.4.2角色与职责测试人员:执行自己负责的功能模块;依据测试计划,按照测试用例对软件功能进行测试。
对于发现的缺陷必须第一时间登记至Bug管理系统,并且跟踪缺陷的状态,直至缺陷的验证关闭。
在测试执行过程中发现的遗漏测试用例必须补充至测试用例,保证测试用例与实际测试的一致性;开发人员:对于测试人员提交的缺陷进行确认、修复;开发负责人呢:对测试人员与实际开发人员意见不一的问题进行裁决。
3.2.4.3启动标准测试用例编写完成、用例评审完成且测试环境已部署完成3.2.4.4工作流程图3.2.4.5输入输出输入:功能测试用例、开发待测版本程序包、测试环境部署文档输出:功能测试报告,缺陷报告单3.2.5发布版本回归测试3.2.5.1目的为发布版本提供质量保障,记录并保证测试的覆盖度;依据《测试计划》有序进行回归测试。
3.2.5.2角色和职责测试负责人:进行版本回归测试;以整个软件为对象,验证新修复的bug功能点、无问题的功能运行正常、进行测试用例的复用执行。
3.2.5.3启动标准功能测试完成且软件功能无中断3.2.5.4工作流程图3.2.5.5输入输出输入:《功能测试用例》、功能测试缺陷、《测试计划》输出:《软件测试报告》3.2.6版本迭代回归测试3.2.6.1目的以整个软件为对象,以测试计划为指导,按照测试用例对新功能、老功能、新老功能接口进行测试,保证测试的全面性和完整性。
3.2.6.2角色和职责测试负责人:进行迭代版本回归测试;以整个软件为对象,以测试计划为指导,按照测试用例对新功能、老功能、新老功能接口进行测试。
3.2.6.3启动标准新功能开发完成,测试用例设计完成。
3.2.6.4工作流程图3.2.6.5输入输出输入:《新版本测试用例》、《测试计划》、开发接口测试文档(针对新旧模块)输出:版本测试bug单、版本测试报告3.2.7文档测试3.2.7.1目的保证对客户的指导与实际系统的使用状况相一致。
3.2.7.2角色和职责测试人员:负责功能模块文档测试对《用户操作手册》及在线帮助进行测试,记录文档描述缺陷,并跟踪直至缺陷的验证关闭。
文档编制人员:对测试人员提出的文档描述缺陷进行修正。
3.2.7.3启动标准《用户操作手册》或在线帮助编写完成3.2.7.4工作流程图3.2.7.5输入输出输入:《用户操作手册》、在线帮助输出:文档缺陷、用户手册等文档定版3.2.8测试报告3.2.8.1目的真实、客观反映测试过程中各测试阶段、测试项的情况,并将结果进行数字化/图像化进行分析,真实反映软件质量实际情况。
3.2.8.2角色与职责测试负责人:负责编制项目测试报告;真实、客观地对测试过程中各测试阶段、测试项的情况,并以数字/图像的形式对实际情况进行分析,真实反映软件实际测试状况。
比如可以从功能模块角度统计bug的数量、从bug类型(如功能、UI、易用性)的角度进行bug的统计,从而有效的指导未来的测试工作,有针对性的去改进产品的质量。
3.2.8.3启动标准测试完成、达到上线标准3.2.8.4工作流程图3.2.8.5输入输出输入:各测试阶段、测试项实际测试情况输出:《项目测试报告》4.软件缺陷管理系统—禅道4.1 概述4.1.1 编写目的为规范禅道的合理使用,方便各项目组管理测试过程,测试管理人员正确使用禅道而编写。
4.1.2 适用范围适用于功能测试有关工作,功能测试中的缺陷要求全部采用禅道进行管理。
4.1.3 角色和职责4.1.4 禅道简介禅道:禅道是一款开源项目管理软件。
它集产品管理、项目管理、质量管理、文档管理、组织管理和事务管理于一体,是一款专业的研发项目管理软件,完整覆盖了研发项目管理的核心流程。
禅道将产品、项目、测试这三者的概念明确分开,产品人员、开发团队、测试人员,这三者分立,互相配合,又互相制约,通过需求、任务、bug来进行交相互动,最终通过项目拿到合格的产品。
4.2 缺陷状态关系示意图4.3 缺陷流转的过程及处理测试人员开发人员测试人员提出拒绝处理待验证关闭重现缺陷的处理步骤如下:4.3.1 基于禅道的项目/测试/Bug管理打开禅道官网,进入手册页面,可以看到禅道的详细使用手册,各人员可以根据自己的需要选择部分进行学习和使用。
开源版手册网址:https:///book/zentaopmshelp/40.html4.4 禅道项目管理流程图5.配置管理软件测试过程是一个复杂性的劳动,测试过程中会产生大量测试文档,主要通过相关管理工具的方式实行对文档的管理。
在文档的管理方面,按照公共类、项目类、软件缺陷类、开发人员类、测试工具类等:1)公共类主要放置测试模板及测试规程说明,测试经验共享文档,开发技术规范等。
2)项目类主要包括项目各阶段文档,如需求分析、测试计划、测试用例设计、分析报告等。
3)开发人员类是针对每个开发人员易犯错误的总结。
4)测试工具类主要放置常用的测试工具。