1、拟制 Prepared by: 审核 Checked by: 批准 Approved by:1 目的:规范软件测试行为,明确各类型项目在各个阶段应作的测试工作。2 范围:本程序适用经批准立项的软件项目的软件测试工作过程。3 定义3.1 测试的软件错误级别:按照对工作功能的影响程度,即严酷度(Severity)的不同,将错误分为以下五级:一级:不能完全满足系统要求,基本功能未完全实现;或者危及人身安全。二级:严重地影响系统要求或基本功能的实现,且没有更正办法(重新安装或重新启动该软件不属于更正办法) 。三级:严重地影响系统要求或基本功能的实现,但存在合理的更正办法(重新安装或重新启动该软件不属于
2、更正办法) 。四级:使操作者不方便或遇到麻烦,但它不影响执行工作功能或重要功能。五级:其他错误。3.2 软件可测试性及可测试性传递项(见附件 1)软件可测试性。4 职责:4.1 软件项目项目组4.1.1 软件项目项目组负责制定项目开发计划并按进度完成各开发阶段工作任务。按时提交阶段成果给技术中心。4.1.2 按照项目开发计划和测试计划,按时提交源代码给测试组,同时附“测试通知单” 。4.1.3 软件开发人员接到测试人员的“测试日志”后,及时完成错误的修改和调试,并在规定的时间内返回给测试人员回测。4.2 技术中心4.2.1 软件评测中心负责组织评测小组,安排测试人员,监督测试各阶段的完成情况。
3、4.2.2 软件评测中心负责组织人员对需求分析说明书、 软件概要设计进行评审。4.3 软件评测中心4.3.1 项目测试组参加阶段评审工作。4.3.2 项目测试组长负责制定测试计划 ,协调测试人员。4.3.3 测试组按照计划在不同的阶段作测试设计 、 测试方案 、 单元测试 、 集成测试 、系统测试 。4.3.3 项目测试组总结测试过程,分析测试情况,作测试分析报告 。5 工作程序5.1 软件测试人员应根据项目开发方案完成可测试性报告 。5.2 软件测试人员根据设计开发计划制定测试计划 ,明确测试人员分工,测试进度,根据项目类型和项目大小确定测试阶段(见附件 6) 。 测试计划经项目组长审核后,
4、提交给技术中心归档。5.3 项目需求分析阶段结束前,项目组将待评审的软件需求分析提交给技术中心归档。软件评测中心人员对软件需求分析进行评审。根据评审通过的软件需求分析 ,测试组完善总体测试计划,明确测试项和测试特性,并根据软件需求分析 、 系统测试作业指导书制定系统测试方案。明确系统测试的测试项,测试的特性及各种性能指标,通过准则等。5.4 项目概要设计阶段结束前,项目组将待评审的软件概要设计提交给技术中心归档。软件评测中心组织人员对软件概要设计进行评审。并检查其与需求的一致性。根据通过评审的软件概要设计 ,测试组进一步完善测试计划,对各测试项、测试特性进行细化,调整测试分工等。若总体测试计划
5、规定作集成测试,则根据软件概要设计 、 集成测试作业指导书作集成测试的测试设计。制定集成测试的测试计划,明确集成测试的测试项、测试特性、测试进度、人员分工、通过准则等。集成测试计划和集成测试设计经测试主管审核后,提交给技术中心归档。5.5 项目详细设计阶段结束后,项目组将软件详细设计提交给技术中心归档。若总体测试计划规定作单元测试,测试组根据软件详细设计 ,制定单元测试的测试计划,明确单元测试的测试项、测试特性、测试进度、人员分工、通过准则等。并且根据软件详细设计 、单元测试作业指导书 、 集成测试作业指导书作单元测试的测试设计,和完善集成测试设计。单元测试计划、单元测试设计、集成测试设计经测
6、试主管审核后,提交给技术中心归档。5.6 开发进入编码阶段,评测则进入阶段测试。软件编程人员在单元模块编码完成、模块逐步集成、搭建系统试运行环境并完成相应调试时向对应的软件测试人员发出单元测试、集成测试、系统测试的“测试通知单” (见附件 2) ,同时将测试对象源代码、可执行程序、及其配置项等可测试性传递项放入待测试程序下。测试人员取出待测试的对象。检查其是否是可测试的,若软件测试传递项是不可测试性的,测试人员登记一次“不可测试性传递次数”在“测试通知单”中,同时将不可测试性传递项不作任何测试返回给编程人员,并注明不可测试原因。5.7 测试人员根据“测试通知单”结合测试计划 、 测试设计说明书
7、 、 测试方案等相应内容对可测试性传递项进行测试工作,对采用测试用例进行测试的测试记录可以只记录测试出的错误项。否则应记录所有的测试过程。错误项测试记录填写在测试日志 (见附件 3)报告中。正确项测试记录填写在测试记录 (见附件 4)报告中。5.8 测试人员将本次测试的测试日志和测试记录 ,交软件开发人员确认,开发人员针对测出的错误项进行修改和调试。5.9 开发人员针对此次测试日志的错误项进行修改调试,并填写相应的“错误修改及原因简述”表示修改调试完毕。全部错误项修改调试完毕后交返测试日志给测试人员回测。此过程完成时间规定为 3 工作日,超过 3 日返回需开发人员注明原因。5.10 测试人员对
8、修改项进行回测,并回测该错误项的相关项,然后在“回测”栏填写“合格”标志表示该测试项经回测后达到合格要求并告一段落。5.11 测试人员对上述“错误修改及原因简述”栏和“回测”栏为非合格标志的测试项,会同相关测试产生的新错误,记录于另一份编号增加 1 的测试日志中,代表又一次测试。其中非合格的旧测试项记录序号保持不变,新错误的记录序号加 1 连续记号。5.12 重复 5.9、5.10、5.11 过程,直至过程 5.8 的情况不再出现。5.13 测试记录归档。所有测试项结束测试后,所产生的测试文档(包括测试日志、测试记录、测试设计、测试方案)归档保存。5.14 测试活动总结。总结软件测试过程,将整
9、个测试工作总结及有关统计数据信息等按要求格式编写测试分析报告 。5.15 由部门主管、测试技术主管、测试技术组长组成评审小组对测试组的测试分析报告进行评审。评审通过后,将测试分析报告提交给技术委员会。同时归档该报告。5.16 技术委员会根据项目审批表组织验收测试。5.17 测试日志编号规则和错误类型分类。5.17.1 测试日志编号格式为:nxxyyyyzz 其中:n:测试人员代码。Xx:测试阶段或性质标志。DY-代表单元测试。JC-代表集成测试。XT-代表系统测试。Yyyy:测试对象代码。Zz:代表同类测试的次数号。首号为 01。之后加 1 计号,代表另一次测试。例如:编号为 HDYXTGL0
10、2,代表测试人员 H 第二次单元测试模块“XTGL”的测试日志 。5.17.2 错误类型分类:按照对工作功能的影响程度,即严酷度(Severity)的不同,将错误分为以下 5 级:一级:不能完全满足系统要求,基本功能未完全实现;或者危及人身安全。二级:严重地影响系统要求或基本功能的实现,且没有更正办法(重新安装或重新启动该软件不属于更正办法) 。三级:严重地影响系统要求或基本功能的实现,但存在合理的更正办法(重新安装或重新启动该软件不属于更正办法) 。四级:使操作者不方便或遇到麻烦,但它不影响执行工作功能或重要功能。五级:其他错误。5.18 软件测试合格通过准则5.18.1 软件需求分析说明书
11、中定义的所有功能已全部实现,性能指标全部达到要求。5.18.2 所有测试项没有残余一级、二级错误。5.18.3 立项审批表、需求分析文档、设计文档和编码实现一致。5.18.4 软件测试过程中的不可测试性传递项不能超过 4 次。5.18.5 以上四条其中之一不满足要求,视为不合格。5.18.6 以上的测试合格通过标准是一个基本的准则,测试人员在测试计划中制定通过标准时,应根据项目具体情况(如项目类别、项目大小)参照以上标准制定项目的测试通过标准。在制定单元测试、集成测试、系统测试的通过准则时,亦应参照以上标准和 5.20 中的测试工作基本停止标准。5.19 测试工作基本停止标准:5.19.1 单
12、元测试在测试时要保证语句覆盖率、分支覆盖率达到一定比率,各测试项通过。如果达到上述要求,即认为已达到单元测试的要求,可以终止单元测试。5.19.2 集成测试主要是测试单元之间的各种接口是否已正确实现,局部系统的功能和性能是否满足。5.19.3 系统测试根据需求规定制定测试大纲,按照大纲对各种功能,性能等进行确认测试,当需求规定的全部功能和性能全部实现,并且用户文档合乎要求可以终止系统测试。5.20 测试工作程序图(见附件 5)6. 支持性文件软件测试计划规范。 软件测试用例作业指导书。 软件单元测试作业指导书。软件集成测试作业指导书。 软件系统测试作业指导书。7. 附件附件 1、软件可测试性
13、附件 2、测试通知单 附件 3、测试日志附件 4、测试记录 附件 5、测试工作程序图附件 6、项目类别、项目大小与实际测试阶段的对应关系附件 1.软件可测试性软件可测试性是指提交测试的软件测试传递项具备可测试的特性,包含:一、软件开发者在各开发阶段提交了完善的软件需求说明书、 软件概要设计 、 软件详细设计 ,并保持文档按设计更改控制规范的适时更新;二、在各测试阶段提交测试通知单 (注明必要的说明和测试要求或条件等) 、合格测试项。三、合格测试项是满足下列条件的软件源代码:1、 已按设计完整编码或已对全部错误完成修改;2、 调试编译合格通过、软件可正常运行;3、 除特别注明外,功能、性能按期完
14、成或实现,无明显的低级缺陷;4、 相关配置项(如数据库)及配置环境(如硬件及接口)齐全,满足测试要求。5、 实现的功能与软件需求说明书、软件设计说明书一致。系统测试时提交用户安装版本、提交用户手册和操作手册且内容与程序逻辑完全一致。附件 2.测试通知单日期:_ 编程人员:_ 测试人员:_对象名称: 所属项目:对象路径: 对象用途:对象使用说明: 测试性质: 单元(DY)测试 集成(JC)测试 系统(XT)测试 其他 不可测试性传递次数测试日志编号 提交修改日期 开发者签名 返回回测日期 测试者签名修改天数注:软件测试传递项具可测试性, “不可测试性传递次数”栏填写 0;否则填写 1,对不可测试
15、性传递项不作测试直接返回编程人员修改并填写“提交修改日期”等栏目。全表各栏均需填写。附件 3.测试日志日期: 测试人员: 编号: 测 试 对 象 名 称 编 程 人 员 所 属 项 目序号错 误类 型测 试 项名 称 操作步骤及现象 错误修改及原因简述 回 测 其他说明: 确认人:附件 4测试记录日期: 测试人员: 编号: 测 试 对 象 名 称 编 程 人 员 所 属 项目序 号 测 试 项 名 称 输入数据和操作步骤 输出数据(结果) 结 果 分 析附件 5、测试工作程序图项目审批表产品项目?根据技术可行性报告作软件可测试性报告评审需求分析说明书通过吗?返回开发组修改根据项目开发计划制定测试计划完善测试计划,增加测试项、测试特性A制定系统测试方案评审概要设计说明书通过吗?修改概要设计说明书作粗略测试设计BA内部评审测试方案通过吗?B评审详细设计说明书通过吗?返回修改详细设计说明书细化测试设计,生成测试设计说明书源代码&单元(集成、系统)测试通知单是否可测试?单元(集成、系统)测试&测试日志单元测试记录并返回开发组修改错误回测通过吗?测试活动结束吗?测试分析报告