软件测试规范整理.doc_第1页
软件测试规范整理.doc_第2页
软件测试规范整理.doc_第3页
软件测试规范整理.doc_第4页
软件测试规范整理.doc_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第 1 页,共 17 页 软件测试规范软件测试规范 文档标识:当前版本: 0.10.1 草稿 当前状态: 发布 发布日期: 2013.2.18 修改历史修改历史 日期日期版本版本作者作者修改内容修改内容评审号评审号变更控制号变更控制号 2013.2.180.1 李婷编写软件测试规范初稿 第 2 页,共 17 页 目目 录录 1测试目的 3 2适用范围 3 3软件测试流程.3 3.1软件测试流程图3 3.2软件测试流程细则.3 3.2.1单元测试 .4 3.2.2集成测试 .4 3.2.3系统测试 .4 3.2.3.1 图形界面测试 .5 3.2.3.2 业务功能测试 .6 3.2.3.3 兼容性测试6 3.2.3.4 数据存储测试 .6 3.2.3.5 系统安全测试 .6 3.2.3.6 系统性能测试 .7 3.2.3.7 磁盘空间测试.14 3.2.3.8 系统日志测试.14 3.2.3.9 其他测试 14 4缺陷类型定义.16 第 3 页,共 17 页 1测试目的测试目的 测试是为了发现 程序 中的错误而执行程序的过程。 好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案。 成功的测试是发现了至今为止尚未发现的错误的测试。 2适用范围适用范围 适用于项目开发过程中的单元测试、集成测试、系统测试、业务测试、验收测 试以及一些专项测试软件测试流程 3 3软件测试流程软件测试流程 3.1软件测试流程图软件测试流程图 3.2软件测试流程细则软件测试流程细则 需求阶段: 测试人员了解项目需求收集结果包括项目需求规格说明、功能结 构及模块划分等。 测试人员了解项目需求变更。 设计编码阶段: 测试人员制定 测试用例 。 项目开发组对完成的功能 模块进行单元测试 所有单元测试及相应的修改完成后,项目开发组组织进行集 成测试 第 4 页,共 17 页 测试阶段:测试 人员 按测试计划、测试用例的要求对被测系统进行系统测试。 填写 错误报告 对修改后的情况进行回归测试。 3.2.1 单元测试单元测试 项目开发实现过程中,每个程序单元(程序单元的划分视具体开发工具而定, 一般定为函数或子程序级)编码调试通过后,要及时进行单元测试。 单元测试由单元开发者自己进行,使用白盒测试方法,根据程序单元的控制流 程,争取达到分支覆盖。对于交互式运行的产品,不便于进行自动测试的,可以采 用功能测试的方法进行。 单元测试针对程序模块,从程序的内部结构出发设计测试用例。多个模块可以 独立进行单元测试。 单元测试内容包括模块接口测试、局部数据结构测试、路径测试、错误处 理测试等; 单元测试组织原则一遍根据开发进度安排对已开发完成的单一模块进行测 试; 单元测试停止标准:完成了所有规定单元的测试,单元测试中发现的bug 已经得到修改。 3.2.2 集成测试集成测试 编码开发完成,项目组内部应进行组装测试。 集成测试着重对各功能模块之间的接口进行测试,验证各功能模块是否能协调 工作、参数传递及功能调用是否正常。 3.2.3 系统测试系统测试 在项目开发完成之后,应对整个系统软件和硬件进行系统测试。对性能、可靠 性、健壮性、压力承受力等方面分别进行评价,以验证系统是否满足规定的需要。 系统测试由测试负责人组织策划(编写测试计划、测试用例)并实施。 系统测试一般进行如下几种情况的测试:图形界面、业务功能、数据存储、 系统安全、 系统性能、 磁盘空间、 软件 兼容性、系统日志等。 第 5 页,共 17 页 3.2.3.1 图形界面测试图形界面测试 1)光标字体布局测试: 光标的初始位置 是否正确 字体是否统一 字号是否符合规定 标题颜色 是否清晰美观 按钮的名称是否规范 界面布局是否合理,整体效果如何 2)输入值测试: 数据类型 数据长度 约束条件是否满足,是否完整 Enter 键是否起作用 键盘操作能否全部代替鼠标操作 输入(光标)是否按照顺序前进 3)按钮测试: 按钮 开放 和封闭是否严格、准确,不能使用的按钮必须封闭 检查 “退出 ”、“取消 ”等具有共性按钮的功能 用户友好性测试 4)异常情况测试: 在完成正常功能测试后,按正常处理的相同操作顺序,执行与正常处理不同 的动作 ,例如 正常处理中要求输入日期的字段,这时输入字符或数字 正常处理中输入字段有范围要求,这时输入超过范围的值 正常处理中用两个值限定范围,这时用一个值或不限定 正常处理中要求用“Tab”键,这时安 “Enter”键或其他键 正常处理中单选框、多选框、下拉框等,使用非指定键操作 是否 不同 于指定的按钮操作 第 6 页,共 17 页 3.2.3.2 业务功能测试业务功能测试 1)各项功能符合 需求要求 3.2.3.3 兼容性测试兼容性测试 2)不同操作系统测试 3)不同浏览器测试 (如: IE、Chrome、FireFox 之间 的差异) 3.2.3.4 数据存储测试数据存储测试 1)提交数据被正确保存到数据库中 2)在某一页面提交的数据可以正确被其他页面调用 3.2.3.5 系统安全测试系统安全测试 安全性和访问控制测试侧重于安全性的两个关键方面: 应用程序级别的安全性,包括对数据或业务功能的访问 系统级别的安全性,包括对系统的登录或远程访问。 应用程序级别的安全性可确保:在预期的安全性情况下,主角只能访问特定的功能或 用例,或者只能访问有限的数据。例如,可能会允许所有人输入数据,创建新账户,但只 有管理员才能删除这些数据或账户。如果具有数据级别的安全性,测试就可确保“用户类 型一”能够看到所有客户消息(包括财务数据),而“用户二”只能看见同一客户的统计 数据。系统级别的安全性可确保只有具备系统访问权限的用户才能访问应用程序,而且只 能通过相应的网关来访问。 测试目标 1.应用程序级别的安全性:核实主角只能访问其所属 用户类型已被授权访问的那些功能或数据 2.系统级别的安全性:核实只有具备系统和应用程序 访问权限的主角才能访问系统和应用程序 技术 应用程序级别的安全性:确定并列出各用户类型及其 被授权访问的功能或数据 1.为各用户类型创建测试,并通过创建各用户类型所 特有的事务来核实其权限 2.修改用户类型并为相同的用户重新运行测试。对于 每种用户类型,确保正确地提供或拒绝了这些附加的 第 7 页,共 17 页 功能或数据 系统级别的访问:请参见以下的“需考虑的特殊事项” 完成标准 各种已知的主角类型都可访问相应的功能或数据, 而且所有事务都按照预期的方式运行,并在先前的应 用程序功能测试中运行了所有的事务 需考虑的特殊事项 必须与相应的网络或系统管理员一起对系统访问权 进行检查和讨论。由于此测试可能是网络管理或系统 管理的职能,可能会不需要执行此测试 3.2.3.6 系统性能测试系统性能测试 1)故障转移和恢复测试: 故障转移和恢复测试可确保测试对象能成功完成故障转移,并能从导致意外数 据损失或数据完整性破坏的各种硬件、软件或网络故障中恢复。 故障转移测试可确保:对于必须持续运行的系统,一旦发生故障,备用系统就 将不失时机地 “顶替 ”发生故障的系统,以避免丢失任何数据或事务。 恢复测试是一种对抗性的测试过程。在这种测试中,将把应用程序或系统置于 极端的条件下(或者是模拟的极端条件下),以产生故障(例如设备输入/ 输出 (I/O) 故障或无效的数据库指针和关健字)。然后调用恢复进程并监测和 检查应用程序和系统,核实应用程序或系统和数据已得到了正确的恢复。 测试目标 确保恢复进程(手工或自动)将数据库、应用程序和系统 正确地恢复到了预期的已知状态。测试中将包括以下各种 情况: 1.客户机断电。 2.服务器断电。 3.通过网络服务器产生的通信中断。 4.DASD 和/或 DASD 控制器被中断、断电或与 DASD 和/或 DASD 控制器的通信中断。 第 8 页,共 17 页 5.周期未完成(数据过滤进程被中断,数据同步进程被中 断) 6.数据库指针或关键字无效。 7.数据库中的数据元素无效或遭到破坏 技术 应该使用为功能和业务周期测试创建的测试来创建一系列 的事务。一旦达到预期的测试起点,就应该分别执行或模 拟以下操作: 1.客户机断电:关闭 PC 机的电源 2.服务器断电:模拟或启动服务器的断电过程 3.通过网络服务器产生的中断:模拟或启动网络的通信中 断(实际断开通信线路的连接或关闭网络服务器或路由器 的电源) 4.DASD 和 DASD 控制器被中断、断电或与 DASD 和 DASD 控制器的通信中断:模拟与一个或多个 DASD 控制器或设备的通信,或实际取消这种通信 5.一旦实现了上述情况(或模拟情况),就应该执行其他 事务。而且一旦达到第二个测试点状态,就应调用恢复过 程。 6.在测试不完整的周期时,所使用的技术与上述技术相同, 只不过应异常终止或提前终止数据库进程本身 对以下情况的测试需要达到一个已知的数据库状态。当破 坏若干个数据库字段、指针和关键字时,应该以手工方式 在数据库中(通过数据库工具)直接进行。其他事务应该 通过使用 “应用程序功能测试”和“业务周期测试 ” 中的测试来执行,并且应执行完整的周期 完成标准 在所有上述情况中,应用程序、数据库和系统应该在恢复 过程完成时立即返回到一个已知的预期状态。此状态包括 仅限于已知损坏的字段、指针或关键字范围内的数据损坏, 以及表明进程或事务因中断而未被完成的报表 第 9 页,共 17 页 需考虑的特 殊事项 1.恢复测试会给其他操作带来许多的麻烦,断开缆线连接 的方法(模拟断电或通信中断)可能并不可取或不可行。 所以,可能会需要采用其他方法,例如诊断性软件工具 2.需要系统(或计算机操作)、数据库和网络组中的资源 3.这些测试应该在工作时间之外或在一台独立的计算机上 运行 2)性能 评估 : 性能评测是一种性能测试,它对响应时间、事务处理速率和其他与时间相关的 需求进行评测和评估。性能评测的目标是核实性能需求是否都已满足。实施和执行 性能评测的目的是将测试对象的性能行为当作条件(例如工作量或硬件配置)的一 种函数来进行评测和微调。 测试目标 核实所指定的事务或业务功能在以下情况下的性能行 为: 1.正常的预期工作量 2.预期的最繁重工作量 技术 1.使用为功能或业务周期测试制定的测试过程 2.通过修改数据文件来增加事务数量,或通过修改脚 本来增加每项事务的迭代数量 3.脚本应该在一台计算机上运行(最好是以单个用户、 单个事务为基准),并在多个客户机(虚拟的或实际 的客户机,请参见下面的“需要考虑的特殊事项” )上重复 完成标准 1.单个事务或单个用户:在每个事务所预期或要求的 时间范围内成功地完成测试脚本,没有发生任何故障 2.多个事务或多个用户:在可接受的时间范围内成功 地完成测试脚本,没有发生任何故障 需考虑的特殊事 项 综合的性能测试还包括在服务器上添加后台工作量。 可采用多种方法来执行此操作,其中包括: 1、直接将 “事务强行分配到 ”服务器上,这通常以 第 10 页,共 17 页 “结构化查询语言 ”(SQL) 调用的形式来实现 2.通过创建 “虚拟的 ”用户负载来模拟许多个(通 常为数百个)客户机。此负载可通过“远程终端仿 真”(Remote Terminal Emulation) 工具来实现。 此技术还可用于在网络中加载“流量 ” 3.使用多台实际客户机(每台客户机都运行测试脚本) 在系统上添加负载 4.性能测试应该在专用的计算机上或在专用的机时内 执行,以便实现完全的控制和精确的评测 5.性能测试所用的数据库应该是实际大小或相同缩放 比例的数据库 3)负载测试 负载测试是一种性能测试。在这种测试中,将使测试对象承担不同的工作量,以评测 和评估测试对象在不同工作量条件下的性能行为,以及持续正常运行的能力。负载测试的 目标是确定并确保系统在超出最大预期工作量的情况下仍能正常运行。此外,负载测试还 要评估性能特征,例如,响应时间、事务处理速率和其他与时间相关的方面。 测试目标 核实所指定的事务或商业理由在不同的工作量条件下的性 能行为时间 技术 1.使用为功能或业务周期测试制定的测试 2.通过修改数据文件来增加事务数量,或通过修改测试来 增加每项事务发生的次数 完成标准 多个事务或多个用户,在可接受的时间范围内成功地完成 测试,没有发生任何故障 需考虑的特殊事项 1.负载测试应该在专用的计算机上或在专用的机时内执行, 以便实现完全的控制和精确的评测 2.负载测试所用的数据库应该是实际大小或相同缩放比例 的数据库 4)强度测试 第 11 页,共 17 页 强度测试是一种性能测试,实施和执行此类测试的目的是找出因资源不足或资源争用 而导致的错误。如果内存或磁盘空间不足,测试对象就可能会表现出一些在正常条件下并 不明显的缺陷。而其他缺陷则可能是由于争用共享资源(如数据库锁或网络带宽)而造成 的。强度测试还可用于确定测试对象能够处理的最大工作量。 注:以下提到的事务都是指逻辑业务事务。 测试目标 核实测试对象能够在以下强度条件下正常运行,不会出现 任何错误: 1.服务器上几乎没有或根本没有可用的内存(RAM 和 DASD)。 2.连接或模拟了最大实际(实际允许)数量的客户机。 3.多个用户对相同的数据或账户执行相同的事务。 4.最繁重的事务量或最差的事务组合(请参见上面的“性 能测试”) 注:强度测试的目标可表述为确定和记录那些使系统无法 继续正常运行的情况或条件 技术 使用为性能评测或负载测试制定的测试 1、要对有限的资源进行测试,就应该在一台计算机上运行 测试,而且应该减少或限制服务器上的 RAM 和 DASD 2、对于其他强度测试,应该使用多台客户机来运行相同的 测试或互补的测试,以产生最繁重的事务量或最差的事务 组合 完成标准 所计划的测试已全部执行,并且在达到或超出指定的系统 限制时没有出现任何软件故障,或者导致系统出现故障的 条件并不在指定的条件范围之内 需考虑的特殊事项 1.如果要增加网络工作强度,可能会需要使用网络工具来 给网络加载消息或信息包 2.应该暂时减少用于系统的 DASD,以限制数据库可用空间 的增长 3.使多个客户机对相同的记录或数据账户同时进行的访问 第 12 页,共 17 页 达到同步 5)容量测试 容量测试使测试对象处理大量的数据,以确定是否达到了将使软件发生故障的极限。 容量测试还将确定测试对象在给定时间内能够持续处理的最大负载或工作量。例如,如果 测试对象正在为生成一份报表而处理一组数据库记录,那么容量测试就会使用一个大型的 测试数据库,检验该软件是否正常运行并生成了正确的报表。 测试目标 核实测试对象在以下高容量条件下能否正常运行: 1.连接或模拟了最大(实际或实际允许)数量的客户机,所 有客户机在长时间内执行相同的、且情况(性能)最坏的业 务功能 2.已达到最大的数据库大小(实际的或按比例缩放的),而 且同时执行了多个查询或报表事务 技术 使用为性能评测或负载测试制定的测试 1.应该使用多台客户机来运行相同的测试或互补的测试,以 便在长时间内产生最繁重的事务量或最差的事务组合(请参 见上面的“强度测试”) 2.创建最大的数据库大小(实际的、按比例缩放的、填充了 代表性数据的数据库),并使用多台客户机在长时间内同时 运行查询和报表事务 完成标准 所计划的测试已全部执行,而且在达到或超出指定的系统限 制时没有出现任何软件故障 需考虑的特殊事项对于上述的高容量条件,哪个时间段是可以接受的时间 6)性能测试需要注意 根据测试计划确定系统测试将实施的测试类型。 确定性能测试时将采用的测试工具,并实施培训。 第 13 页,共 17 页 确定测试环境。性能测试一般应在用户的生产环境下进行,对于没有用户 的产品,可以采用模拟用户环境来实施,并就不同的配置进行测试。影响 性能的系统因素:物理硬件( CPU 速度、内存、磁盘缓存等);部 署构架(服务器的数量、处理活动的分布等) ;网络属性 ;可以与 测试对象同时安装和执行的其他软件 确定测试强度问题。如正常的数据库的大小、数据传输量、并行用户数 (客户端)、服务器的处理能力等,并估算出进行性能测试所需要的规模。 确定 下列测试参数:为了精确反映实际的工作量,测试数据库应该多大? 其他测试文件应该多大?为了避免 I/O 瓶颈,数据应如何分布在整个 测试系统中? 如果要测试数据库,则应该如何设置数据库的主要参数? 关键功能。关键功能是性能测试的重点。确定关键至少应满足以下任一条 件: 该业务功能 需要评测和评估性能; 功能 被一个或多个主角频繁执行 ; 功能 表现出较高的系统使用率百分比; 功能 需要使用重要的系统资源 。 重要功能。重要功能是那些可能影响关键功能 性能行为的功能 。确定 重要功能至少应满足以下任一条件: 功能 必须在执行关键功能之前或之后执行 ; 功能在执行关键功能的同时在部署系统上定期执行,如电子邮件或后 台打印 。 系统使用者 .对每种不同的用户,应确定它们的属性值。 思考时间 主角响应测试对象的各项提示所用的时间 ; 按键速度 主角与接口交互的速度; 请求速度 主角向测试对象提出请求的速度 ; 重复次数 按顺序重复用例或请求的次数 ; 交互方法 主角所使用的交互方法,例如使用键盘输入值、切换到 某个子段、使用快捷键等,或使用鼠标“指向并单击 ”、“剪切 并粘贴 ”等。 性能测试要在不同的负载下执行多次。 最佳 反映最佳可能部署条件的负载; 额定 反映当前部署条件的负载; 峰值 反映最差部署条件的负载。 第 14 页,共 17 页 3.2.3.7 磁盘空间测试磁盘空间测试 1)安全、卸载过程 2)启动程序过程 3)程序运行过程 3.2.3.8 系统日志测试系统日志测试 1)Cookies 是否 保存特定信息 ; 2)Cookies 是否按预定的时间进行保存; 3)刷新对 Cookies 有什么影响。 3.2.3.9 其他测试其他测试 1)配置测试: 配置测试 核实测试对象在不同的软件和硬件配置中的运行情况。在大多数生产环境 中,客户机工作站、网络连接和数据库服务器的具体硬件规格会有所不同。客户机工作站 可能会安装不同的软件,如应用程序、驱动程序等,而且在任何时候,都可能运行许多不 同的软件组合,从而占用不同的资源。 测试目标 核实测试对象可在所需的硬件和软件配置中正常运 行 技术 使用功能测试脚本 在测试过程中或在测试开始之前,打开各种与非测 试对象相关的软件(例如 Microsoft 应用程序: Excel 和 Word),然后将其关闭 执行所选的事务,以模拟主角与测试对象软件和非 测试对象软件之间的交互 重复上述步骤,尽量减少客户机工作站上的常规可 用内存 完成标准对于测试对象软件和非测试对象软件的各种组合, 第 15 页,共 17 页 所有事务都成功完成,没有出现任何故障 需考虑的特殊事项 需要或可以使用并可以通过桌面访问哪种非测试对 象软件? 通常使用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论