相信大多数的软件测试工程师都听说过或者简单了解过测试计划,但是你真的知道什么是测试计划么?你真的知道如何编写测试计划么?
大多数人应该是一脸茫然。
百度的结果五花八门,有没有相对规范的标准呢?答案是没有,至少我们没有找到。
今天小编给大家分享一个全套测试计划模板
一份完美的软件测试计划赠予你,拿走,不谢!
XX项目名称测试计划书
1.测试背景
为了保证XX项目测试工作的组织性,提高测试的工作质量和效率,为XX项目测试工作提供完整的测试计划、测试人员工作安排、测试轮次、测试方法、系统功能模块覆盖率以及测试风险分析,确保测试项目平稳有序的运行。
2.测试目标
XXXX测试项目的测试目标为:
Ø 接口程序覆盖率100%,接口错误修改率100%
Ø 测试案例的功能覆盖率达100%,执行率达100%
Ø 已修改的测试问题回归测试覆盖率达100%
Ø 测试记录闭环率达95%
3.测试范围
Ø 测试计划和设计:根据软件需求说明书,制定测试计划,测试方案,包括收集测试方法,测试用例,测试工具等。
Ø 单元测试:根据系统详细设计,制定测试计划,制定测试方案。此项目由开发人员自测。
Ø 集成测试:将各个模块进行组合测试,保证所有功能和界面都正确。对产品重点模块进行负载测试,确保软件性能达到软件需求说明书的要求
…………………………
4.测试输出文档
文档 | 使用工具 | 提交日期 | 责任人 |
《测试计划》 | Word | 测试经理 | |
《测试用例》 | QC | 测试经理 | |
《缺陷报告》 | QC | 测试经理 | |
《测试报告》 | Excel | 测试经理 |
Ø 项目的测试人员、职位、工作职责
角色 | 姓名 | 工作内容 |
测试经理 | 编写测试计划 缺陷管理 测试结果分析 | |
黑盒测试工程师 | 编写测试用例 执行测试 报告缺陷 | |
自动化测试工程师 | 编写脚本 自动化测试执行 | |
性能测试工程师 | 分析软件功能 开发脚本 性能测试执行 |
Ø 需要配合的部门与人员
角色 | 姓名 | 工作内容 |
开发人员 | 协助搭建测试环境 | |
业务人员 | 协助测试人员理解需求,提供业务帮助 |
5.测试工具
Ø 测试管理工具为Quality Center、性能测试工具有LoadRunner、功能自动化测试工具为Quick Test Professional
用途 | 工具 | 生产厂商 | 版本 |
测试管理 | QC | HP | 9.0 |
性能测试 | LR | HP | 8.1 |
功能自动化 | QTP | HP | 9.2 |
6.测试规模以及工作量分析
XXXX项目为大型项目,测试工作包括为测试计划、测试用例的编写、集成测试的执行、性能测试的执行,涉及功能模块较多,业务逻辑较为复杂,预估测试工作量如下所示。
Ø 测试工作量预估
任务阶段 | 人数 | 工作日 | 人日小计 | 备注 |
测试案例编写 | 15 | 7 | 105 | |
测试执行 | 15 | 23 | 345 |
Ø 功能点分析
模块 | 子节点 | 测试人员 | 启动时间 |
XXXX | 登录及整体架构 | 2022-10-24 | |
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 | |||
XXXXX | 2022-10-24 | ||
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 | |||
XXX | 2022-10-24 | ||
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 | |||
2022-10-24 |
7.测试进程
1)测试流程表
编辑
添加图片注释,不超过 140 字(可选)
2)测试过程描述
a.测试计划阶段
Ø 编写测试计划
测试经理根据项目计划与项目业务需求说明书创建测试计划,如果此需求发生变化,则将根据变化更新此项目测试计划。
Ø 评审测试计划
ü 项目经理浏览并评审《系统项目测试计划》。
ü 测试经理负责更新此文档。
ü 项目经理负责评审和批准经过更新的文档。
ü 《项目测试计划》的版本为1.0, 如果该计划被更新,则版本的序号也随之变更。
ü 测试工程师根据测试计划执行测试任务。
b.测试用例阶段
Ø 编写测试用例
ü 分析《软件需求说明书》。
ü 测试工程师根据《软件需求说明书》编写测试用例。
ü 冒烟测试用例需要被同时创建。
Ø 评审测试用例
ü 测试组负责评审《测试用例》。
ü 在发现错误或问题的情况下,该测试用例将会被更新。
ü 测试经理负责填写《测试用例评审报告》。
ü 我们将《测试用例》的最初版本定义为1.0,如果该文件得到更新,其版本也会被同时更新。
c.测试阶段
Ø 冒烟测试
测试工程师负责根据《项目测试用例》进行冒烟测试,执行测试用例的实际输出结果是否符合预期结果,我们将此用例标注为通过或者失败,将结果返回给开发部门。
Ø 系统测试
根据《项目测试计划》和《项目测试用例》,测试工程师负责执行测试用例:
ü 当执行测试用例时:
1. 如果实际输出结果和预期输出结果相同,该用例需要被标注为通过。
2. 如果实际输出结果和预期输出结果不同,该用例需要被标注为失败。
3. 如果测试时遇到功能性缺陷导致用例不能执行,该测试用例需要被标注为锁定,直到该缺陷被修复,才可以继续执行该测试用例。
4. 所有在测试过程发现的缺陷,需要被提交到Quality Center。
ü 测试用例在测试过程中将根据需要得到更新。
ü 测试经理负责分析测试结果,对测试人员执行的测试用例进行一定比率的内部QC(质量控制)。
ü 测试完成时,需得到测试经理的批准。
备注:所有的缺陷必须被提交到缺陷处理系统Quality Center。
d.测试总结阶段
Ø 分析和总结测试结果
ü 测试经理总结各自的测试工作并在《项目测试总结》中填写相应的部分内容。包括测试工具,测试技术,测试体会以及工作质量等。
ü 测试经理负责在《项目测试总结》中分析与总结测试数据,填写包括测试人员工作效率,人力资源消耗,测试过程中经验与教训,评价整个项目过程中的测试质量。
Ø 测试完成
ü 测试经理负责批准测试完成。
ü 所有测试人员在《项目测试总结》中签名,证明所有任务都已完成。
8.测试进度及时间资源
Ø XX网银项目测试人员数量为15人,测试时间为450个工作日。
测试活动 | 计划开始日期 | 计划结束日期 | 实际开始日期 | 实际结束日期 |
测试计划 | 2022-10-24 | 2022-10-27 | ||
设计测试用例 | 2022-10-26 | 2022-11-4 | ||
测试用例评审 | 2022-10-27 | 2022-11-5 | ||
环境搭建 | 2022-10-27 | 2022-10-28 | ||
系统测试 | 2022-10-28 | 2022-11-20 | ||
性能测试 | 2022-11-22 | 2022-12-2 | ||
测试总结报告 | 2022-11-29 | 2022-12-2 |
9.测试轮次安排
Ø XXXX测试项目测试轮次视项目情况而定,通常分为2轮,每轮的工作根据轮次的推进而改变。
测试活动 | 计划开始日期 | 计划结束日期 | 实际开始日期 | 实际结束日期 |
第一轮 | 2022-10-28 | 2022-11-12 | ||
第二轮 | 2022-11-13 | 2022-11-20 |
测试活动 | 测试内容 | 人员 |
第一轮 | 冒烟测试、功能测试 | 15 |
第二轮 | 缺陷验证、冒烟测试、功能测试、用户界面测试、、兼容性测试 | 15 |
10.测试方法
1)功能类测试
功能类测试是银行项目测试工作中的重点,在各个环节都需要有比较全面的考虑。先考虑测试案例的组织结构,首先按照功能模块(通常对应系统中的一级菜单)归类,然后针对各功能模块下的每一个具体功能(即有独立页面的功能,简称子功能)再分类,分别设计不同方面的测试案例,案例的组织结构如下:
——“XX模块”
——“XX叶子功能1”
——冒烟测试
——页面要素验证
——必输项验证
——输入项检查
——联动项检查
——本功能流程测试
——通过性测试
——失效性测试
——“XX叶子功能2”
……
……
——总体规则验证
——数据流转测试
——后台线程测试
数据流转测试和后台线程测试,这两类案例可考虑根据情况,放在某一模块下,或者单独自成一部份。
对这几类测试,做一个简要的说明:
名称 | 描述 | 备注 |
冒烟测试 | 对本功能正常的主线流程进行验证而设计的案例 | 此案例专门用来做冒烟测试,通常每个子功能只需提供一条该案例,设计时只需保证该功能的正常操作流程(即仅输入必要的有效数据)通过即可 |
总体规则 | 根据需求文档中提供的总体规则来设计的用例。主要包括各个功能页面风格的一致性、操作习惯的一致、显示格式的统一等。 | 通常一个项目的总体规则是固定的,既要保证案例的执行覆盖度,又要避免案例的冗余,所以总体规则可由一个人完成设计,在各个模块下直接复用;测试执行时,可根据需要来进行执行情况的统计。 |
页面\必输项验证 | 执行该功能操作,页面中所必须录入/选择的项目,是否在为空的情况下仍然可以通过提交的检查。 | 各个页面的必输项不同,要考虑必输项的显示方式,以及非必输项是否也被做了必输限制等。 |
页面\输入项检查 | 主要指在客户端所进行的各类输入数据项的合法性的检查。 | 这部分案例主要指在客户端能够验证或限制的内容,如数据输入长度限制、是否含有非法字符等。 |
页面\联动项检查 | 主要指页面中多个输入或选择项目之间,根据前一项的结果而对其它项是否产生了约束的检查。 | 例如,城市的选择,选择了省之后,其下可选择的市,是否进行了列表更新等。 |
本功能流程测试 | 当前功能本身的操作及数据流程正确性的测试,包括正常流程和异常流程。 | 例如,执行转账操作,输入正确和错误密码是否得到了正确的正常和异常返回结果;以及显示的返回结果是否与实际结果一致等。 |
数据流转测试 | 主要指银行端与客户端之间的数据通讯是否准确,以及企业网银授权、审核流程的数据流转是否正确等。 | 例如,企业网银在银行端设定某种授权模式,在客户端是否正确体现等;或银行端修改了客户信息、发布了客户通知等在客户端是否正确体现等。 |
后台线程测试 | 验证系统设定的在固定时间自动线程是否正确执行。 | 例如,系统设定每天凌晨1点,某系统自动从主机同步网点数据进行更新等。 |
注:
Ø “数据流转测试”从名称和范围上难与功能流程测试有明显划分的界限,可根据实际项目情况变更案例类别的名称,或明确规定试用范围;
Ø 实际项目中可能仍会有部分案例无法划分在上述的类别中,可根据实际情况进行调整,或单独形成一个补充案例。例如,主机错误码在网银系统未知的情况,是由于网银数据库基础数据不完整,也应属于缺陷。
Ø “冒烟测试”的案例,仅执行冒烟测试时使用,案例可能会与“本功能流程测试”的案例重复,但此处单独提出,便于测试的执行和统计,不算案例冗余。
2)兼容性测试
兼容性测试主要应针对客户端,并且根据客户的要求并结合实际,来提供不同的测试方案,并非要盲目的兼容一切;B/S架构项目兼容性测试的重点,在于浏览器兼容的测试
兼容对象 | 测试重点 | 备注 |
操作系统 | 文件证书的导入,移动证书的识别是否正常 | 主要针对Vista系统测试,其他非MS操作系统根据需求以及可提供的驱动程序而定 |
浏览器 | 页面各功能的可用性,界面显示的美观、一致性 | 此为兼容性测试的重点。通常需要兼容IE6、IE7 |
Office类文档 | 网银系统中导出或生成的各类数据,使用不同版本的office(包括非MS的office),是否都能够正常打开并准确显示 | 通常以office97以上版本作为测试对象 |
其它主流软件 | 在网银系统的使用过程中,如果同时打开其他主流软件,是否会造成冲突(如QQ、MSN等) | 此测试仅能对已知的可能不兼容软件进行测试,无法达到全面测试,需要总结实际经验来完善 |
硬件设备 | 网银系统的使用中,对常见的输入设备是否支持良好,尤其在使用特殊控件的位置和独立的客户端系统中(如使用USB键盘等) | 此测试仅能对已知的可能不兼容设备进行测试,无法达到全面测试,需要总结实际经验来完善 |
3)多语言测试
Ø 银行系统的界面中,非简体中文的语言应由用户来提供,或至少需要由用户确认语言使用的准确性;
Ø 重点测试,使用非简体中文的语言后,页面内容显示的位置、格式等美观性是否发生了变化,是否在可接受范围内;
Ø 多语言测试时,要对系统进行完整测试,以达到系统中各个位置(包括弹出的提示信息、异常时的错误信息等),都能够以相应的语言正确显示。
4)性能测试
银行系统中,性能测试主要针对客户端进行测试,不同项目需求,对性能压力的要求有所不同,银行端在无特殊要求下无需进行性能测试。
性能测试的主要应用策略:
Ø 负载测试:不断增加压力,直到超出预期性能指标,或某种资源达到饱和状态。
(1)能找到系统所能承受的压力(在正常指标、资源范围内,如响应时间超过10秒,CPU大于70%)
(2)可以配合系统调优
Ø 并发测试:并发访问同一个应用或模块
(1)主要关注并发访问时,是否内存泄露、死锁、其它资源争用的问题。
(2)“并发用户数”的估算,需要结合实际,并根据特定计算公式得出。
Ø 疲劳测试:较长时间的使系统处于一定压力下,看是否能够稳定运行。
(1)使CPU或其他资源处于较高的利用率下,持续运行一定时间,并关注整体运行状况。
(2)使CPU压力增大,可以等同于小压力情况下更长时间的运行效果,相当于是“压缩时间的测试”。