1、系统测试计划模板系统测试计划版 本SEPG模板版本变更记录:注意:非SEPG人员不得修改;版本号拟制/修改日期拟制/修改人修改记录批准人V1.02008-4-17黄冲创建文档注意:以下为开发人员填写部分:工件版本变更记录:版本号拟制/修改日期拟制/修改人修改记录批准人大版本号实际拟制日期作者大版本号实际修改日期修改人大版本号实际修改日期修改人注: 1)拟制、审核、会签、批准不走电子流程时,必须用钢笔或签字笔填写,不得用铅笔、圆珠笔填写,不得涂改。本模板中用“”括起来的内容包括本段,是编写指导,在最终的文档中应予以删除。其它内容应予以保留。如果某节内容无需填写,则在该节下写“无”,而不要将本节删
2、除或不填写任何内容(留白将无法判断:是本节内容无需填写还是因为疏忽而忘了填写?)目 录1 项目简介 11.1 项目目的 11.2 项目背景 11.3 项目规模 11.4 项目范围 11.5 项目资源 11.6 项目核实 22 项目测试需求 33 项目测试策略 43.1 测试类型 53.1.1 数据和数据库完整性测试 53.1.2 功能测试 53.1.3 业务周期测试 63.1.4 用户界面测试 63.1.5 性能评测 73.1.6 负载测试 83.1.7 强度测试 93.1.8 容量测试 103.1.9 安全性和访问控制测试 103.1.10 故障转移和恢复测试 113.1.11 配置测试 1
3、33.1.12 安装测试 143.2 版本回归计划 143.3 测试等级 143.4 测试进入和通过准则 153.4.1 测试进入准则 153.4.2 测试退出准则 153.5 工具 153.6 项目Bug单 154 资源 154.1 角色 164.2 系统资源 174.2.1 硬件资源 174.2.2 软件资源 175 项目里程碑 186 测试风险管理 186.1 风险管理方法 187 可交付工件 197.1 测试模型 197.2 测试记录 197.3 缺陷报告 19附录 A:项目任务 19附录 B:测试人员提供条件 20附录 C:项目组提供条件 23附录 D:项目bug单 241 项目简介
4、1.1 项目目的 的这一“测试计划”文档有助于实现以下目标(可选): 确定康佳售后服务系统的信息和应测试的软件构件。 列出推荐的测试需求(高级需求)-根据系统功能清单中内容进行测试。 推荐可采用的测试策略,并对这些策略加以说明。 确定所需的资源,并对测试的工作量进行估计。 列出测试项目的可交付元素1.2 项目背景康佳集团为国内知名企业,主要业务覆盖:彩电、白电、通信、小家电等行业和领域。康佳集团已正式应用SAP R3 系统(ECC 5.0);在维修业务及售后服务方面,现有基于R3开发的C/S系统运行并负责收集维修数据。但在实际使用过程中,C/S系统操作复杂,部署困难,由于使用Client连接系
5、统,对网络要求比较高;同时R3系统结构比较严谨,在一定程度上限制了系统的灵活性,不能充分适应并满足现有售后服务系统的要求。在售后服务方面,康佳已经提出“大拇指”服务理念,与之对应,集团成立呼叫中心,统一管理和调配售后服务资源。在此情况下,原有系统已经不能满足新的架构及需求。因此,特提出新售后服务系统需求。1.3 术语、定义术语/定义英文对应词含 义1.4 项目范围测试类型测试功能点测试项(或测试用例)规模估算测试所需时间估算1.5 项目资源主要描述项目的相关人员,保证项目测试人员能够在第一时间找到相对应的负责人,促进项目组内部的透明性注:可适当地删除或添加文档项。项目沟通联系表角色联系人相关人
6、员联系电话备注开发经理开发人员测试负责人测试人员培训人员用户接口人(可参考)项目配置管理员注:可适当地删除或添加文档项。项目相关资料说明文档类型文档位置备注需求文档测试Bug库测试文档程序文档项目会议文档1.6 项目核实下表列出了制定测试计划时所使用的文档,并标明了各文档的可用性:注:可适当地删除或添加文档项。文档(版本/日期)已创建或可用已被接收或已经过复审作者或来源最新文档所在位置需求规约 是 否 是 否功能性规约 是 否 是 否用例报告 是 否 是 否项目计划 是 否 是 否设计规约 是 否 是 否原型 是 否 是 否用户手册 是 否 是 否业务模型或业务流程 是 否 是 否数据模型或数
7、据流 是 否 是 否业务功能和业务规则 是 否 是 否项目或业务风险评估 是 否 是 否2 项目测试需求下表用于确定被当作测试对象的各项需求(例如用例、功能性需求和非功能性需求)。 表中列出了将要测试的对象。在此处输入一个主要测试需求的高级列表。需求列表需求规约备注数据和数据库完整性确定用户对数据入口的约定,确定所有合法和不合法的数据定义。其他特别要求特殊字符的考虑功能确定每一个功能点的输入、输出,尽可能多的列出所有的功能需求,以便能更准确的设计测试样例。其他特别要求业务流确定用户的业务流建立业务流规约,明确开发、测试要遵循的流程规约其他特别要求用户界面确定用户的操作习惯,确定用户界面的设计(
8、最好通过不同的图片来标注不同的界面需求)其他特别要求一般使用Microsoft的界面设计规范(典型窗体:桌面属性窗体)性能确定在正常情况下用户对系统各个功能处理时间的要求(确定在某一个配置情况下的)其他特别要求如:正常查询反应时间负载正确评估系统可能在高峰时期带来的巨量访问,评估客户可以忍受的系统的最大处理时间,建立负载标准其他特别要求特别是在对海量数据进行检索的操作中,这样的巨量很容易导致数据库瘫痪强度确定用户系统可能出现的资源抢占现象,根据用户的需求标准正确评估、模拟抢占其他特别要求主要是内存、CPU等的抢占特别是“胖客户”系统的情况,客户端的计算机可能需要完成多重任务,这样就很可能出现强
9、度的问题容量确定用户对系统容量的规定其他特别要求安全性和访问控制如果系统存在多类型用户操作:确定每一类用户应该具有的、不应该具有的权限正确分类用户权限的控制级别其他特别要求正确处理交叉用户权限的控制处理故障转移和恢复确定软件是否存在故障转移和恢复的需求,以及希望达到的预期目标(尽可能准确描述)其他特别要求服务器断电等情况的模拟配置安装的硬件最低环境需求安装的软件环境需求(特别是要求多环境下)安装对相关软件的要求其他特别要求要尽可能详细描述软件可能出现的安装环境组合,以便测试人员能准确、完整的模拟用户最终的操作可能,尽可能降低错误发生的可能性。安装、卸载首次安装的具体要求升级安装的具体要求卸载安
10、装的具体要求卸载旧版本后安装的具体要求其他特别要求只有明确形成对不同情况的安装的要求以后,才能保证测试人员能构针对具体的要求有针对性的完成测试任务。3 项目测试策略测试策略提供了对测试对象进行测试的推荐方法。上一节“测试需求”中说明的是测试对象,而本节则要说明如何对测试对象进行测试。 对于每种测试,都应提供测试说明,并解释其实施和执行的原因。如果将不实施和执行某种测试,则应该用一句话加以说明,并陈述这样做的理由。例如,“将不实施和执行该测试。该测试不合适”。制定测试策略时所考虑的主要事项有:将要使用的技术以及判断测试何时完成的标准。下面列出了在进行每项测试时需考虑的事项,除此之外,测试还只应在
11、安全的环境中使用已知的、有控制的数据库来执行。3.1 测试类型3.1.1 数据和数据库完整性测试在 中,数据库和数据库进程应作为一个子系统来进行测试。在测试这些子系统时,不应将测试对象的用户界面用作数据的接口。对于数据库管理系统 (DBMS),还需要进行深入的研究,以确定可以支持以下测试的工具和技术。测试目标:确保数据库访问方法和进程正常运行,数据不会遭到损坏。技术:调用各个数据库访问方法和进程,并在其中填充有效的和无效的数据(或对数据的请求)。检查数据库,确保数据已按预期的方式填充,并且所有的数据库事件都已正常发生;或者检查所返回的数据,确保为正当的理由检索到了正确的数据完成标准:所有的数据
12、库访问方法和进程都按照设计的方式运行,数据没有遭到损坏。需考虑的特殊事项:测试可能需要 DBMS 开发环境或驱动程序在数据库中直接输入或修改数据。进程应该以手工方式调用。应使用小型或最小的数据库(记录的数量有限)来使所有无法接受的事件具有更大的可视度。3.1.2 功能测试对测试对象的功能测试应侧重于所有可直接追踪到用例或业务功能和业务规则的测试需求。这种测试的目标是核实数据的接受、处理和检索是否正确,以及业务规则的实施是否恰当。此类测试基于黑盒技术,该技术通过图形用户界面 (GUI) 与应用程序进行交互,并对交互的输出或结果进行分析,以此来核实应用程序及其内部进程。以下为各种应用程序列出了推荐
13、使用的测试概要:测试目标:确保测试对象的功能正常,其中包括导航、数据输入、处理和检索等功能。技术:利用有效的和无效的数据来执行各个用例、用例流或功能,以核实以下内容:在使用有效数据时得到预期的结果。在使用无效数据时显示相应的错误消息或警告消息。各业务规则都得到了正确的应用。完成标准:所计划的测试已全部执行。所发现的缺陷已全部解决。需考虑的特殊事项:确定或说明那些将对功能测试的实施和执行造成影响的事项或因素(内部的或外部的)3.1.3 业务周期测试业务周期测试应模拟在一段时间内对 执行的活动。应先确定一个时间段(例如一年),然后执行将在该时间段(一年内)发生的事务和活动。这种测试包括所有的日、周
14、和月周期,以及所有与日期相关的事件(如备忘录)。测试目标确保测试对象及背景的进程都按照所要求的业务模型和时间表正确运行。技术:通过执行以下活动,测试将模拟若干个业务周期:将修改或改进对测试对象进行的功能测试,以增加每项功能的执行次数,从而在指定的时间段内模拟若干个不同的用户。将使用有效的和无效的数据或时间段来执行所有与时间或数据相关的功能。将在适当的时间执行或启用所有周期性出现的功能。在测试中还将使用有效的和无效的数据,以核实以下内容:在使用有效数据时得到预期的结果。在使用无效数据时显示相应的错误消息或警告消息。各业务规则都得到了正确的应用。完成标准:所计划的测试已全部执行。所发现的缺陷已全部
15、解决。需考虑的特殊事项:系统日期和事件可能需要特殊的支持活动需要通过业务模型来确定相应的测试需求和测试过程。3.1.4 用户界面测试用户界面 (UI) 测试用于核实用户与软件之间的交互。UI 测试的目标是确保用户界面会通过测试对象的功能来为用户提供相应的访问或浏览功能。另外,UI 测试还可确保 UI 中的对象按照预期的方式运行,并符合公司或行业的标准。测试目标:核实以下内容:通过测试对象进行的浏览可正确反映业务的功能和需求,这种浏览包括窗口与窗口之间、字段与字段之间的浏览,以及各种访问方法(Tab 健、鼠标移动、和快捷键)的使用窗口的对象和特征(例如,菜单、大小、位置、状态和中心)都符合标准。
16、技术:为每个窗口创建或修改测试,以核实各个应用程序窗口和对象都可正确地进行浏览,并处于正常的对象状态。完成标准:成功地核实出各个窗口都与基准版本保持一致,或符合可接受标准需考虑的特殊事项:并不是所有定制或第三方对象的特征都可访问。3.1.5 性能评测性能评测是一种性能测试,它对响应时间、事务处理速率和其他与时间相关的需求进行评测和评估。性能评测的目标是核实性能需求是否都已满足。实施和执行性能评测的目的是将测试对象的性能行为当作条件(例如工作量或硬件配置)的一种函数来进行评测和微调。注:以下所说的事务是指“逻辑业务事务”。这种事务被定义为将由系统的某个 Actor 通过使用测试对象来执行的特定用
17、例,例如,添加或修改给定的合同。测试目标:核实所指定的事务或业务功能在以下情况下的性能 行为:正常的预期工作量预期的最繁重工作量技术:使用为功能或业务周期测试制定的测试过程。通过修改数据文件来增加事务数量,或通过修改脚本来增加每项事务的迭代数量。脚本应该在一台计算机上运行(最好是以单个用户、单个事务为基准),并在多个客户机(虚拟的或实际的客户机,请参见下面的“需要考虑的特殊事项”)上重复。完成标准:单个事务或单个用户:在每个事务所预期或要求的时间范围内成功地完成测试脚本,没有发生任何故障。多个事务或多个用户:在可接受的时间范围内成功地完成测试脚本,没有发生任何故障。需考虑的特殊事项:综合的性能
18、测试还包括在服务器上添加后台工作量。可采用多种方法来执行此操作,其中包括:直接将“事务强行分配到”服务器上,这通常以“结构化查询语言”(SQL) 调用的形式来实现。通过创建“虚拟的”用户负载来模拟许多个(通常为数百个)客户机。此负载可通过“远程终端仿真”(Remote Terminal Emulation) 工具来实现。此技术还可用于在网络中加载“流量”。使用多台实际客户机(每台客户机都运行测试脚本)在系统上添加负载。 性能测试应该在专用的计算机上或在专用的机时内执行,以便实现完全的控制和精确的评测。性能测试所用的数据库应该是实际大小或相同缩放比例的数据库。3.1.6 负载测试负载测试是一种性
19、能测试。在这种测试中,将使测试对象承担不同的工作量,以评测和评估测试对象在不同工作量条件下的性能行为,以及持续正常运行的能力。负载测试的目标是确定并确保系统在超出最大预期工作量的情况下仍能正常运行。此外,负载测试还要评估性能特征,例如,响应时间、事务处理速率和其他与时间相关的方面。注:以下所说的事务是指“逻辑业务事务”。这种事务被定义为将由系统的某个最终用户通过使用应用程序来执行的特定功能,例如,添加或修改给定的合同。测试目标:核实所指定的事务或商业理由在不同的工作量条件下的性能行为时间。技术:使用为功能或业务周期测试制定的测试。通过修改数据文件来增加事务数量,或通过修改测试来增加每项事务发生
20、的次数。完成标准:多个事务或多个用户:在可接受的时间范围内成功地完成测试,没有发生任何故障。需考虑的特殊事项:负载测试应该在专用的计算机上或在专用的机时内执行,以便实现完全的控制和精确的评测。负载测试所用的数据库应该是实际大小或相同缩放比例的数据库。3.1.7 强度测试强度测试是一种性能测试,实施和执行此类测试的目的是找出因资源不足或资源争用而导致的错误。如果内存或磁盘空间不足,测试对象就可能会表现出一些在正常条件下并不明显的缺陷。而其他缺陷则可能由于争用共享资源(如数据库锁或网络带宽)而造成的。强度测试还可用于确定测试对象能够处理的最大工作量。注:以下提到的事务都是指逻辑业务事务。测试目标:
21、核实测试对象能够在以下强度条件下正常运行,不会出现任何错误:服务器上几乎没有或根本没有可用的内存(RAM 和 DASD)连接或模拟了最大实际(实际允许)数量的客户机多个用户对相同的数据或账户执行相同的事务最繁重的事务量或最差的事务组合(请参见上面的“性能测试”)。注:强度测试的目标可表述为确定和记录那些使系统无法继续正常运行的的情况或条件。客户机的强度测试在“配置测试”的第 3.1.11 节中进行了说明。技术:使用为性能评测或负载测试制定的测试。要对有限的资源进行测试,就应该在一台计算机上运行测试,而且应该减少或限制服务器上的 RAM 和 DASD。对于其他强度测试,应该使用多台客户机来运行相
22、同的测试或互补的测试,以产生最繁重的事务量或最差的事务组合。完成标准:所计划的测试已全部执行,并且在达到或超出指定的系统限制时没有出现任何软件故障,或者导致系统出现故障的条件并不在指定的条件范围之内。需考虑的特殊事项:如果要增加网络工作强度,可能会需要使用网络工具来给网络加载消息或信息包。应该暂时减少用于系统的 DASD,以限制数据库可用空间的增长。使多个客户机对相同的记录或数据账户同时进行的访问达到同步。3.1.8 容量测试容量测试使测试对象处理大量的数据,以确定是否达到了将使软件发生故障的极限。容量测试还将确定测试对象在给定时间内能够持续处理的最大负载或工作量。例如,如果测试对象正在为生成
23、一份报表而处理一组数据库记录,那么容量测试就会使用一个大型的测试数据库,检验该软件是否正常运行并生成了正确的报表。测试目标:核实测试对象在以下高容量条件下能否正常运行:连接或模拟了最大(实际或实际允许)数量的客户机,所有客户机在长时间内执行相同的、且情况(性能)最坏的业务功能。已达到最大的数据库大小(实际的或按比例缩放的),而且同时执行了多个查询或报表事务。技术:使用为性能评测或负载测试制定的测试。应该使用多台客户机来运行相同的测试或互补的测试,以便在长时间内产生最繁重的事务量或最差的事务组合(请参见上面的“强度测试”)。创建最大的数据库大小(实际的、按比例缩放的、或填充了代表性数据的数据库)
24、,并使用多台客户机在长时间内同时运行查询和报表事务。完成标准:所计划的测试已全部执行,而且在达到或超出指定的系统限制时没有出现任何软件故障。需考虑的特殊事项:对于上述的高容量条件,哪个时间段是可以接受的时间?3.1.9 安全性和访问控制测试安全性和访问控制测试侧重于安全性的两个关键方面:应用程序级别的安全性,包括对数据或业务功能的访问系统级别的安全性,包括对系统的登录或远程访问。应用程序级别的安全性可确保:在预期的安全性情况下,主角只能访问特定的功能或用例,或者只能访问有限的数据。例如,可能会允许所有人输入数据,创建新账户,但只有管理员才能删除这些数据或账户。如果具有数据级别的安全性,测试就可
25、确保“用户类型一”能够看到所有客户消息(包括财务数据),而“用户二”只能看见同一客户的统计数据。系统级别的安全性可确保只有具备系统访问权限的用户才能访问应用程序,而且只能通过相应的网关来访问。测试目标:应用程序级别的安全性:核实主角只能访问其所属用户类型已被授权访问的那些功能或数据。系统级别的安全性:核实只有具备系统和应用程序访问权限的主角才能访问系统和应用程序。技术:应用程序级别的安全性:确定并列出各用户类型及其被授权访问的功能或数据。为各用户类型创建测试,并通过创建各用户类型所特有的事务来核实其权限。修改用户类型并为相同的用户重新运行测试。对于每种用户类型,确保正确地提供或拒绝了这些附加的
26、功能或数据。系统级别的访问:请参见以下的“需考虑的特殊事项”完成标准:各种已知的主角类型都可访问相应的功能或数据,而且所有事务都按照预期的方式运行,并在先前的应用程序功能测试中运行了所有的事务。需考虑的特殊事项:必须与相应的网络或系统管理员一起对系统访问权进行检查和讨论。由于此测试可能是网络管理或系统管理的职能,可能会不需要执行此测试。3.1.10 故障转移和恢复测试故障转移和恢复测试可确保测试对象能成功完成故障转移,并能从导致意外数据损失或数据完整性破坏的各种硬件、软件或网络故障中恢复。故障转移测试可确保:对于必须持续运行的系统,一旦发生故障,备用系统就将不失时机地“顶替”发生故障的系统,以
27、避免丢失任何数据或事务。恢复测试是一种对抗性的测试过程。在这种测试中,将把应用程序或系统置于极端的条件下(或者是模拟的极端条件下),以产生故障(例如设备输入/输出 (I/O) 故障或无效的数据库指针和关健字)。然后调用恢复进程并监测和检查应用程序和系统,核实应用程序或系统和数据已得到了正确的恢复。测试目标:确保恢复进程(手工或自动)将数据库、应用程序和系统正确地恢复到了预期的已知状态。测试中将包括以下各种情况:客户机断电服务器断电通过网络服务器产生的通信中断DASD 和/或 DASD 控制器被中断、断电或与 DASD 和/或DASD 控制器的通信中断周期未完成(数据过滤进程被中断,数据同步进程
28、被中断)。数据库指针或关键字无效数据库中的数据元素无效或遭到破坏技术:应该使用为功能和业务周期测试创建的测试来创建一系列的事务。一旦达到预期的测试起点,就应该分别执行或模拟以下操作:客户机断电:关闭 PC 机的电源。服务器断电:模拟或启动服务器的断电过程。通过网络服务器产生的中断:模拟或启动网络的通信中断(实际断开通信线路的连接或关闭网络服务器或路由器的电源)。DASD 和DASD 控制器被中断、断电或与 DASD 和 DASD 控制器的通信中断:模拟与一个或多个 DASD 控制器或设备的通信,或实际取消这种通信。一旦实现了上述情况(或模拟情况),就应该执行其他事务。而且一旦达到第二个测试点状
29、态,就应调用恢复过程。在测试不完整的周期时,所使用的技术与上述技术相同,只不过应异常终止或提前终止数据库进程本身。对以下情况的测试需要达到一个已知的数据库状态。当破坏若干个数据库字段、指针和关键字时,应该以手工方式在数据库中(通过数据库工具)直接进行。其他事务应该通过使用“应用程序功能测试”和“业务周期测试”中的测试来执行,并且应执行完整的周期。完成标准:在所有上述情况中,应用程序、数据库和系统应该在恢复过程完成时立即返回到一个已知的预期状态。此状态包括仅限于已知损坏的字段、指针或关键字范围内的数据损坏,以及表明进程或事务因中断而未被完成的报表。需考虑的特殊事项:恢复测试会给其他操作带来许多的麻烦。断开缆线连接的方法(模拟断电或通信中断)可能并不可取或不可行。所
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1