1、软件测试方案模板XX项目软件测试方案编号:XXXX公司2017年XX月1 文档说明1.1 文档信息文档基本信息参看表格 11文档信息表。表 1-1文档信息表文档作者XX公司创建日期XX年X月X日当前版本V1.0上次版本无1.2 文档控制1.2.1 变更记录文档变更记录在表格 1-2中详细记录。表 1-2文档变更记录表变更日期变更人版本备注2016.5.10XX公司V1.0新增1.2.2 审阅记录表格 1-3 中详细记录了审阅记录。表 1-3审阅记录表审阅日期审阅人版本备注2 引言2.1 编写目的说明编写本测试方案的目的是为软件开发项目管理者、软件工程师、系统维护工程师、测试工程师提供关于XX项
2、目系统整体系统功能和性能的测试指导。同时,该文档也是用户确定软件是否完整测试的重要依据。2.2 读者对象本测试方案可能的合法读者对象为软件开发项目管理者、软件工程师、测试组、系统维护工程师、用户。2.3 项目背景项目名称:XX简称:XX委托单位:XX开发单位:XX2.4 测试目标在用户使用软件之前,尽可能地发现软件中存在的错误和不合理之处,排除软件中潜在的错误,最终把高质量的软件系统交给用户。系统的测试目标:功能、性能、UI、安全性、兼容性、容量。2.5 测试参考文档和测试提交文档2.5.1 测试参考文档表 2-1列出了此次计划涉及到的参考资料。表 2-1参考资料名称备注XXGBT 15532
3、-2008 计算机软件测试规范GBT 9386-2008 计算机软件测试文档编制规范2.5.2 测试提交文档测试提交文档如表 2-2所示。表 2-2测试提交文档文档名称备注软件测试计划软件测试方案软件测试用例软件测试记录软件测试报告2.6 术语和缩略语本文使用了表 2-3术语/定义表所显示的面向用户的术语、定义,包括通用词语在本文档中的专用解释。表 2-3术语/定义表术语/定义说明软件测试软件测试就是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。系统测试系统测试是通过与系统的需求规格作比较,发
4、现软件与系统需求规格不相符合或与之矛盾的地方。它将通过确认测试的软件,作为整个基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人眼等其他系统元素结合起来,在实际使用环境下,对计算机系统进行的测试。功能测试黑盒测试是基于系统需求规格,在不知道系统或组件的内部结构的情况下进行的测试。通常又将黑盒测试叫做:基于规格的测试、输入输出测试、功能测试或数据驱动测试。是基于用户观点出发的测试。主要是验证功能是否符合需求,包括原定功能的校验、是否有冗余功能、遗漏功能。性能测试性能测试关注的是系统的整体。它和通常说的强度、压力、负载测试有密切关系。所以压力和强度测试应该与性能测试一同进行。表
5、2-4缩略语表所列为本文用到的缩略语。表 2-4缩略语表缩略语说明3 测试要求3.1 测试配置要求3.1.1 硬件环境测试配置需要的硬件环境如表 3-1。 表 3-1硬件环境表资源类型资源描述数量云存储3.1.2 软件环境测试配置需要的软件环境如表 3-2所示 表 3-2软件环境表分类软件运行系统服务器数据库其他3.2 测试手段3.2.1 测试方法系统的功能测试我们选用的是手工测试,运用黑盒测试中的等价类划分、边界值分析、错误推测、因果图法。系统UI方面的测试包括:易用性测试、规范性测试、帮助设施测试、合理性测试、美观与协调性测试、独特性测试、快捷方式组合测试。系统的安全性、兼容性、安装与反安
6、装、配置测试也是手工测试。单元测试采用的方法是白盒测试,功能测试采用黑盒测试。3.3 测试数据测试数据主要按照XX,参考XX中规定的运行限制,设计测试用例,作为XX平台的测试数据。3.4 测试策略3.4.1 单元测试首先按照系统、子系统和模块进行划分,但最终的单元必须是功能模块,或面向对象过程中的若干个类。单元测试是对功能模块进行正确性检验的测试工作,也是后续测试的基础。目的是在于发现各模块内部可能存在的各种差错,因此需要从程序的内部结构出发设计测试用例,着重考虑以下五个方面:1) 模块接口:对所测模块的数据流进行测试。2) 局部数据结构:检查不正确或不一致的数据类型说明、使用尚未赋值或尚未初
7、始化的变量、错误的初始值或缺省值。3) 路径:虽然不可能做到穷举测试,但要设计测试用例查找由于不正确的计算(包括算法错、表达式的符号表示不正确、运算精度不够等)、不正确的比较或不正常的控制流(包括不同数据类型量的相互比较、不适当地修改了循环变量、错误的或不可能的循环终止条件等)而导致的错误。4) 错误处理:检查模块有没有对预见错误的条件设计比较完善的错误处理功能,保证其逻辑上的正确性。5) 边界:注意设计数据流、控制流中刚好等于、大于或小于确定的比较值的用例。3.4.2 集成测试集成测试也叫组装测试或联合测试。通常,在单元测试的基础上需要将所有的模块按照设计要求组装成系统,这时需要考虑的问题:
8、1) 在把各个模块连接起来的时候,穿越模块接口的数据是否会丢失。2) 一个模块的功能是否会对另一个模块的功能产生不利的影响。3) 各个子功能组合起来,能否达到预期要求的父功能。4) 全局数据结构是否有问题。5) 单元模块的误差累积起来,是否会放大,从而达到不能接受的程度。我们在组装时可参考采用一次性组装方式或增殖式组装方式。3.4.3 系统测试系统测试目的是在于验证软件的功能和性能及其他特性是否与用户的要求一致,主要是下列类型的测试:1) 功能测试:验证系统功能是否符合其需求规格说明书,核实系统功能上是否完整,没有冗余和遗漏的功能。功能测试详细介绍如表 3-3所示:表 3-3功能测试详细表测试
9、范围验证数据精确度、数据类型、业务功能等相关方面的正确性测试目标核实所有功能均已正常实现,即是否与需求一致技 术采用黑盒测试、边界测试、等价类划分等测试方法工具与方法手工测试开始标准开发阶段对应的功能完成并且测试用例设计完成完成标准测试用例通过并且最高级缺陷全部解决需考虑的特殊事项2) 用户界面测试:测试用户界面是否具有导航性、美观性、行业或公司的规范性、是否满足设计中要求的执行功能。详细介绍如表 3-4UI测试介绍表所示:表 3-4UI测试介绍表测试范围1导航、链接、Cookie、页面结构包括菜单、背景、颜色、字体、按钮名称、TITLE、提示信息的一致性等。2友好性、可操作性(易用性)测试目
10、标核实各个窗口风格(包括颜色、字体、提示信息、图标、TITLE等等)都与需求保持一致,或符合可接受标准,能够保证用户界面的友好性、易操作性,而且符合用户操作习惯。技 术WEB测试通用方法工具与方法手工测试、目测开始标准界面开发完成完成标准UI符合可接受标准,能够保证用户界面的友好性、易操作性,而且符合用户操作习惯测试重点与优先级需考虑的特殊事项3) 性能测试:测试相应时间、事务处理效率和其他时间敏感的问题。性能测试介绍如表 3-5 所示:表 3-5性能测试介绍表测试范围多用户长时间在线操作时性能方面的测试测试目标核实系统在大流量的数据与多用户操作时软件性能的稳定性,不造成系统崩溃或相关的异常现
11、象技 术手工测试、自动化测试开始标准自动化测试脚本设计并评审通过且项目组移交系统测试完成标准系统满足用户需求中所要求的性能要求测试重点与优先级需考虑的特殊事项4) 兼容性测试:测试软件在不同的平台上使用的兼容性。兼容性测试详细如表 3-6 所示:表 3-6兼容性测试详细表测试范围1使用不同版本的不同浏览器、分辨率、操作系统分别进行测试。2不同操作系统、浏览器、分辨率和各种运行软件等各种条件的组合测试。测试目标核实系统在不同的软件和硬件配置中运行稳定技 术黑盒测试工具与方法手工测试开始标准项目组移交系统测试完成标准在各种不同版本不同类项浏览器、操作系统或者其组合下均能正常实现其功能(此测试根据开
12、发提供依据决定测试范围)测试重点与优先级需考虑的特殊事项5) 安全性测试:测试软件系统对非法侵入的防范能力。安全性测试详细表如表 3-7 所示:表 3-7安全性测试详细表测试范围1 用户、管理员的密码安全2 权限 3 非法攻击测试目标1. 用户、管理员的密码管理2应用程序级别的安全性:核实用户只能操作其所拥有权限能操作的功能。3系统级别的安全性:核实只有具备系统访问权限的用户才能访问系统。技 术代码包或者非法攻击工具工具与方法手工测试开始标准功能测试完成完成标准执行各种非法操作无安全漏洞且系统使用正常测试重点与优先级需考虑的特殊事项6) 配置测试:测试在不同网络、服务器、工作站的不同软硬件配置
13、条件下,软件系统的质量。详细的配置测试详细表如表 3-8 所示:表 3-8配置测试详细表测试范围不同网络、服务器、工作站,不同软硬件配置条件测试目标核实系统在不同的软硬件配置条件下系统的质量是否达到标准技 术黑盒测试工具与方法手工测试开始标准系统开发完成后完成标准达到相关要求测试重点与优先级测试优先级以测试需求的优先级为参照需考虑的特殊事项软硬件设备问题7) 回归测试详细介绍如表 3-10 所示:表 3-10回归测试详细表测试范围所有功能、用户界面、兼容性、安全性等测试类型测试目标核实执行所有测试类型后功能、性能等均达到用户需求所要求的标准技 术黑盒测试工具与方法手工测试和自动化测试开始标准每
14、当被测试的软件或其环境改变时在每个合适的测试阶段上进行回归测试完成标准95%的测试用例执行通过并通过系统测试测试重点与优先级测试优先级以测试需求的优先级为参照需考虑的特殊事项软硬件设备问题3.4.4 验收测试 用户新增或修改内容的内容如表 3-11 所示。表 3-11用户验收表测试项测试方法预计结果实际结果结论 用户反馈问题确认。3.5 测试资源测试人力资源分配如表 3-12 所示。表 3-12人力资源表人员角色职责、任务备注项目经理项目管理测试组组长制定测试计划、方案并安排测试工作测试工程师执行测试测试工程师执行测试3.6 测试阶段及范围测试阶段及范围如表 3-13 所示。 表 3-13测试
15、阶-段范围表序号阶段范围时间1测试计划整个系统的测试计划2系统培训整个系统测试的培训3测试设计整个系统的测试用例4测试执行整个系统5结果分析全部测试结果3.7 通过测试的标准一般有“基于测试用例”和“基于缺陷密度”两种评比准则,在这里我们采用前者。准则如下:1) 功能性测试用例通过率达到100%;2) 非功能性测试用例通过率达到95%;3) 没有高于优先级3以上的问题。备选通过办法:根据实际情况由软件开发部门的经理、项目经理和测试负责人共同讨论确定本测试阶段是否结束。4 软件结构介绍4.1 概述XX平台简称XX,总共有XX大功能模块分别是:XXX。每个模块的需求模块如下表所示:本文档描述的数据
16、接入需求模块、需求标识及需求描述如表 4-1 所示。表 4-1数据接入子系统需求模块及标识需求标识需求模块需求描述本文档描述的XX需求模块、需求标识及需求描述如表 4-2 所示。表 4-2XX需求模块及标识需求标识需求模块需求描述本文档描述的XX需求模块、需求标识及需求描述如表 4-3所示。表 4-3XX需求模块及标识需求标识需求模块需求描述本文档描述的平台管理需求模块、需求标识及需求描述如表 4-4 所示。表 4-4XX需求模块及标识需求标识需求模块需求描述本文档描述的XX模块、需求标识及需求描述如表 4-5 所示。表 4-5XX需求模块及标识需求标识需求模块需求描述5 用例表格软件测试用例
17、如表 5-1所示。表 5-1软件测试用例表用例标识功能模块前置条件验证点编号测试步骤期望结果6 关注点6.1 文本输入框1) 检测空数据2) 检测过长数据(超出空间本身的长度和数据库中改字段所允许的长度);3) 检测特殊字符,尤其是数据库中不允许的字符,甚至回车字符、空格字符等;4) 检测字符类型,比如应该输入数字的文本框输入英文字符;5) 中文字符的处理;6) 对于日期时间型数据,检查格式正确性以及时间日期的合理性。比如开始时间不能晚于结束时间等。6.2 下拉列表1) 列表数据是否正确、完整;2) 下拉列表与其他空间的联动关系;3) 是否允许多选;6.3 增加数据1) 数据个数的上限;2)
18、重复数据处理,尤其是键值的重复;3) 相关表格的更新;4) 检查多次使用back剪的情况:在有back的地方,back,回到原页面,再back,重复多次,看是否会出错。6.4 修改数据1) 不能破坏数据库数据的关联和完整;2) 重复数据处理,尤其是键值的重复;3) 修改登录用户本身信息时对系统的影响;4) 修改正在使用的数据;5) 检查多次使用back剪的情况:在有back的地方,back,回到原页面,再back,重复多次,看是否会出错。6.5 删除数据1) 不能破坏数据库数据的关联和完整;2) 删除正在使用的数据;3) 删除登录用户本身。6.6 查询数据1) 多条件组合查询的正确性;2) 多次连续查询正确性。6.7 数据导入导出1) 导入数据格式要求不应太苛刻,提示明确;2) 导出数据不应乱码。6.8 数据接入与处理1) 数据接入方式是否全部能用,数据是否能正确接入;2) 数据处理方式是否全部可行;3) 数据的动态监测是否正确无误。6.9 其他1) 对网络故障的提示;2) 同一用户多次登录;3) 内存使用情况;4) 压力测试,系统承受能力,多用户同时登录使用。7 附录7.1 附录1审批记录表表格 7-1审批记录表角色签名日期备注软件项目经理开发部经理测试组长工程经理质量保证人员配置管理人员