收藏 分享(赏)

测试流程规范.doc

上传人:weiwoduzun 文档编号:3081013 上传时间:2018-10-02 格式:DOC 页数:10 大小:114.90KB
下载 相关 举报
测试流程规范.doc_第1页
第1页 / 共10页
测试流程规范.doc_第2页
第2页 / 共10页
测试流程规范.doc_第3页
第3页 / 共10页
测试流程规范.doc_第4页
第4页 / 共10页
测试流程规范.doc_第5页
第5页 / 共10页
点击查看更多>>
资源描述

1、一、项目立项立项阶段的主要任务是确认立项的理由,提出立项建议,使立项建议成为正式项目。二、软件开发软件开发阶段分为:项目规划需求分析概要设计详细设计代码编写代码实现测试交接实施测试回归测试同行审查测试总结项目发布、跟踪项目确定后,需求人员设计详细需求文档及产品原型,并制定项目计划。项目计划是一个用来协调所有其他计划,以指导项目执行和控制的可操作文件。它体现了对需求的理解,是开展项目活动的基础,也是软件项目跟踪与监控的依据。开发人员根据需求文档及产品原型编写代码。在开发阶段如果需求发生变更时,应及时以文档形式说明。三、软件测试项目测试的目的是检查系统是否符合项目需求规定的要求。主要进行功能测试、

2、健壮性测试、易用性测试、用户界面测试、性能测试等(根据项目要求选择不同测试方法)测试过程在测试环境中进行。四、基本流程立项主要对项目的可行性进行分析,并且确定项目是否需要测试需求评审需求定义完成,开发人员和测试人员对需求中不清楚、不完整、太概括或存在疑义的地方提出问题,相关人员解答并确认。需求人员在对需求进行修改的同时,应以文档形式告知开发及测试人员。测试工作启动在正式测试任务下达前,开发团队应在项目(产品)开发计划完成后及时向测试团队下达预通知,告之较为确切的测试日期,提供当前最新的相关资料。部门经理和测试组长组建测试小组,并视具体情况决定是否需要调整人力、时间安排、测试环境等其它资源。测试

3、人员可预先熟悉必要的项目(产品)资料。针对需求分析文档和项目开发计划文档测试完成后,测试组需要确定测试过程中的风险,并设计出合理的规避分险的策略,为后续的测试工作提供直接的指导。否是需求产品人员 开发人员测试人员发布是否测试 产品人员确认软件测试流程软件项目的前要工作主要是需求分析。事实上一个软件项目或产品的成败与需求分析有着非常重要的联系。因此在没有明确用户需求的情况下盲目地进行开发和测试都不能够取得理想的效果。若具备条件,测试人员应从客户需求调研阶段就介入到项目中。软件产品需求调研阶段工作流程如图所示通过软件产品需求调研阶段工作流程图可以看到,在这一阶段有两个与软件测试相关的输出,它们分别

4、是软件总体测试计划和系统测试方案。它们的作用是将软件细化为可检验的测试需求。一般情况下要重点考虑以下问题1、 产品基本情况调研这部分应包括产品的一些基本情况介绍,例如产品的运行平台和应用的领域,产品的特点和主要的功能模块等。对于大的测试项目,还要包括测试的目的和侧重点。具体的要点如表所示。 目的 重点描述如何使测试建立在客观的基础上,定义测试的策略及测试的配置,粗略地估计测试大致需要的周期和最终测试报告递交的时间变更 说明有可能会导致测试计划变更的事件。包括测试工具改进了,测试环境改变了,或者是添加了新的功能技术结构 可以借助画图,将要测试的软件划分成几个组成部分,规划成一个适用于测试的完整的

5、系统,包括数据是如何存储的,如何传递的,每一个部分的测试是要达到什么样的目的,每一个部分是怎么实现数据更新的。还有就是常规性的技术要求,比如运行平台、需要什么样的数据库等产品规格 制造商和产品版本号的说明测试范围 简单地描述如何搭建测试平台,以及测试的潜在风险项目信息 说明要测试的项目的相关资料。例如,用户文档、产品描述、主要功能的举例说明2、 测试需求说明这一部分要列出所有要测试的功能项。凡是没有出现在这个清单里的功能项都排除在测试的范围之外。有了测试需求说明,可以帮助我们了解被测试软件所有功能项当前需求工作培训编写需求文档进入下一阶段需求评审需求变更需求说明书系统测试方案,软件总体测试计划

6、的测试情况如何,即所有功能项中测了什么和没测什么。具体要点如表所示。功能的测试 理论上测试是要覆盖所有的功能项。例如,在数据库中添加、编辑、删除记录等,这会是一个浩大的工程,但是有利于测试的完整性设计的测试 对于一些用户界面、菜单的结构还有窗体的设计是否合理等的测试整体考虑 这部分测试需求要考虑到数据流从软件中的一个模块流到另一个模块的过程中的正确性3、 测试策略和记录这是整个测试计划的重点所在,要描述如何公正客观地开展测试,要考虑模块、功能、整体、系统、版本、压力、性能、配置和安装等各个因素的影响。要尽可能地考虑到细节,越详细越好,并制作测试记录文档的模板,为即将开始的测试做准备,测试记录的

7、具体要点如表所示。公正性声明 要对测试的公正性、遵照的标准做一下说明,证明测试是客观的。在整体上,软件功能要满足需求,实现正确,与用户文档的描述保持一致测试用例 描述测试用例是什么样的,采用了什么工具,工具的来源是什么,如何执行的,用了什么样的数据。测试的记录中要为将来的回归测试留有余地。当然,也要考虑同时安装的其他的软件对正在测试的软件会造成的影响特殊考虑 有时针对一些外界环境的影响,要对软件进行一些特殊方面的测试经验判断 对以往的测试中经常出现的问题加以考虑设想 采取一些发散性的思维,往往能帮助您找到测试的新途径4、 测试资源配置项目资源计划:制定一个项目资源计划,包含的是每一个阶段的任务

8、、所需要的资源,当发生类似到了使用期限或者资源共享的事情的时候,要更新这个计划。5、 计划表测试的计划表可以做成一个或多个项目通用的形式,根据大致的时间估计来制作,操作流程要以软件测试的常规周期作为参考,也可以是根据什么时候应该测试哪一个模块来制定。6、 配置测试环境配置测试环境是测试实施的一个重要环节,会直接影响测试过程的效率和最终测试结果的真实性和正确性。测试环境包括硬件环境和软件环境,硬件环境指测试必要的服务器、客户端、网络连接设备,以及打印机扫描仪等辅助硬件设备所构成的环境;软件环境指被测软件运行时的操作系统、数据库及其它应用软件构成的环境。在实际测试中,软件环境又可分为主测试环境和辅

9、助测试环境。主测试环境是测试软件功能、安全可靠性、性能、易用性等大多数指标的主要环境。一般来说,配置主测试环境可遵循下列原则。符合软件运行的最低要求。测试环境首先要保证能支撑软件正常运行。选用比较普及的操作系统和软件平台。营造相对简单、独立的测试环境。除了操作系统外,测试机上只安装软件运行和测试必需的软件,以免不相关的软件影响测试实施。无毒环境。利用有效的正版杀毒软件检测软件环境,保证测试环境中没有病毒。辅助测试环境常常用来满足一些特殊的测试需求或测试项目。兼容性测试:在满足软件运行要求的范围内,可选择一些典型的操作系统和常用应用软件对其安装卸载和主要功能进行验证。模拟真实环境测试:有些软件,

10、特别是面向大众的商品化软件,在测试时常常需要考查在真实环境中的表现。横向对比测试:利用辅助测试环境“克隆”出完全一致的测试环境,从而保证横向对比测试结果的可靠性。7、 设计用例测试用例的设计过程可以是一个由简到繁逐步细化的过程,即一个从简单的测试描述(测试功能点、测试需求等)逐步细化到能够去依照执行的测试用例的过程。如果没有测试用例或者仅有简单的测试功能描述,测试过程难以控制,测试结果将毫无可靠性可言,同时简单的测试用例可靠性低、重用性差,并且有可能导致不同人员的理解不同。详细的测试用例就不同了,它的可靠性高,而且便于执行所需时间,易于控制。但是,要写出详细的测试用例,付出的人力、物力的代价是

11、很大的。因此测试用例到底细化、详细到什么程度,就要综合考虑各种因素。例如,在时间要求上确定测试时间是否充足,测试执行者对系统的了解程度如何,将测试用例交给其人人执行时是否需要过多的解释等各个方面的问题。8、 问题跟踪报告在测试的计划阶段,应该明确如何准备去做一个问题报告,以及如何去界定一个问题性质。问题报告要包括问题的发现者和修改者、问题发生的频率、用了什么样的测试用例测出该问题,以及明区问题产生的测试环境。问题描述尽可能是定量地、分门别类地列举,问题有如表所示的 3 种。严重问题 严重问题意味着功能不可用,或者是权限限制方面的失误等,也可能是某个地方的改变引发了其他的问题。功能没有按设计要求

12、实现或者是一些界面交互的实现不正确一般问题 严重影响系统或基本功能的实现,但存在合理的更正方法建议问题 功能运行得不像要求的那么快,或者不符合某些约定俗成的习惯,但不影响系统的性能,界面显示错误,格式不对,含义模糊混淆的提示信息等9、 测试计划的评审测试计划的评审,在测试真正实施开展之前,必须要认真负责地检查一遍,并获得整个测试部门人员的认同,包括部门负责人的同意和签字。需求调研阶段完成后,人们会根据需求说明书的要求开始设计软件。首先是概要设计,之后是详细设计,最后开发人员根据产品的详细设计进行编码。这一过程叫做软件设计和编码阶段。软件设计和编码阶段的工作流程如图所示通过软件设计和编码阶段的测

13、试工作有两方面的内容。一方面,根据概要设计生成集成测试方案;另一方面,根据详细设计生成单元测试方案并在编码过程中开始进行单元测试,编码结束后生成单元测试总结报告。接下来进入到集成、验收测试阶段,该阶段的工作流程如图所示上一阶段概要设计详细设计评审评审概要设计文档集成测试方案详细设计文档单元测试方案编码单元测试单元测试总结进入下一阶段单元测试总结报告上一阶段集成测试系统测试测试部评估集成测试方案验收测试产品综合测试评价系统测试方案测试工作总结 测试总结文档通过以上的分析,可以得出这样一个结论:软件测试工作贯穿了整个软件生命周期,渗透到从分析、设计、编程,以及测试的各个阶段中,如测试计划的编写从需

14、求分析和设计阶段就开始了,而具体的测试工作随编程工作的不断深入也在进行中。在实际工作中,测试环节可分为明显的、同等重要的 3 个阶段,即:单元测试、集成测试和系统测试。测试工作中的第 4 个阶段是验收测试阶段,验收测试无论在规模上或性质上都和系统测试很相似,它们的根本区别在于:前者是内部的,而后者则是受“客户”控制的。如图所示是软件测试的过程流程图单元测试(由开发人员进行测试)单元测试又称为模块测试,是最小单位的测试,单元测试是在系统开发过程中进行的测试活动。在单元测试活动中,各独立单元模块将在与系统的其它部分相隔离的情况下进行测试,单元测试针对每一个程序模块进行正确性检验,检查各个程序模块是

15、否正确地实现了规定的功能。例如,一个窗口、函数、菜单、报表或一个存储过程都可以作为一个单元进行测试。单元测试是测试的第一步,其依据是详细设计,单元测试应对模块内所有重要的控制设计测试用例,以便发现模块内部的错误。集成测试(由开发人员协助测试人员进行测试)集成测试也称综合测试,是在单元测试的基础上将已经通过测试的单元测试模块按照设计要求组装成系统或子系统,再进行的测试。很多实际例子表明,软件的一些模块虽然能够单独工作,但并不保证连接之后也肯定能正常工作。例如,一个模块可能对另一个模块可能产生不利的影响;将子功能合成时不一定产生所期望的主功能;独立可接受的误差在组装后可能会超过可接受的误差限度;全

16、程数据结构可能有错误;可能会发现单元测试中未发现的接口方面的错误;在单元测试中无法发现时序问题(实时系统) ;在单元测试中无法发现资源竞争问题。系统测试(由测试人员进行测试)系统测试,是将通过确认测试的软件,作为整个基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素结合在一起,在实际运行被测模块 单元测试被测模块 单元测试被测模块 单元测试集成测试集成测试确认测试系统测试验收测试可交付用户信息其它元素软件需求设计信息环境下,对计算机系统进行全面的功能覆盖。通常软件在由集成测试进入系统测试之前,需要对软件是否可以进入系统测试进行评估,这一过程被称为确认测试。确认

17、测试往往在系统测试前期进行。它检验所开发的软件是否能按用户提出的要求运行。如能达到这一要求,则认为开发的软件是合格的。确认测试是在集成测试完成之后,分散开发的模块被连接起来,构成完整的程序之后开始进行的。在确认测试阶段需要做的工作如图所示。它包括有效性测试及软件配置审查,在通过了确认测试之后,软件才可以正式进入系统测试阶段。有效性测试是在模拟的环境下(可能就是开发的环境) ,运用黑盒测试的方法,验证所测软件是否满足需求规格说明书列出的需求。因此,需要按照已制定测试计划中规定好的测试种类和测试用例,以及测试步骤进行。通过实施预定的测试计划和测试步骤,确定软件的特性是否与需求相符,确保所有的软件功

18、能需求都能得到满足,所有的软件性能需求都能达到,所有的文档都是正确且便于使用的。同时,对其他软件需求,如可移植性、兼容性、出错自动恢复、可维护性等,也都要进行测试,确认是否满足。在全部的软件测试用例运行完以后,所有的测试结果可以分为两类。 测试结果与预期结果相符。这说明软件的这部分功能或性能特征与需求规格说明书相符合,从而接受了这部分程序。 测试结果与预期结果不符。这说明软件的这部分功能或性能与需求规格说明书不一致,因此要为它提交一份问题报告。软件配置审查是确认测试过程的重要环境,其目的是保证软件配置的所有成分都齐全,各方面的质量都符合要求,具有维护阶段所必需的细节,在确认测试的过程中,应当严

19、格遵守用户手册和操作手册中规定的使用步骤,以便检查这些文档资料的完整性和正确性。必须仔细记录发现的遗漏和错误,并且适当地补充和改正。软件在通过确认测试后就可以正式进入系统测试阶段。系统测试的目的在于通过与系统的需求定义做比较,发现软件与系统的定义不符合或与之矛盾的地方。从技术角度看,系统测试是软件交付用户前内部测试的最后阶段,所有的开发和测试在这一点上集中表现为:生成一个具有一定功能的软件系统。该阶选择测试人员构造测试用例实际运行测试软件计划用户文档开发文档源程序文本支持环境有效性测试软件配置审查有效性测试测试报告软件配置进入系统测试段主要对系统的准确性及完整性等方面进行测试。主要进行功能确认

20、测试、运行测试、强度测试、恢复测试、安全性测试等。系统测试的测试人员由测试组成员(或质量保证人员)或测试组成员与用户共同测试。系统测试在整个系统开发完成后即将交付用户使用前进行。在这一阶段,完全采用黑盒法对整个系统进行测试。如果软件可以按照用户合理的期望的方式来工作,即可认为通过系统测试。而合理的期望方式应写入软件需求说明书中以作为确认标准。所以系统测试应检查软件能否按要求进行工作,即是否满足软件需求说明书中的确认标准。实现软件确认要通过一系列的黑盒测试。系统测试的另一个重要环节是配置复审。复审的目的在于保证软件配置齐全、分类有序,并且包括软件维护所必需的细节。系统测试目的是充分运行系统,验证

21、系统各部件是否都能正常工作并完成所赋予的任务。这里所谓的系统不仅仅包括软件本身,而且还包括计算机硬件及其相关的外围设备,数据及其收集传输机构,甚至掌握计算机运行的人员及其操作等。验收测试(由测试人员协助产品人员进行测试)验收测试是软件产品交付用户正式使用前的最后一道工序。它是以用户为主的测试,软件开发和质量保证人员也应参加。由用户参加设计测试用例,使用用户界面输入测试数据,并分析测试的输出结果,一般使用生产中的实际数据进行测试。在测试过程中,除了考虑软件的功能和性能外,还应对软件的可移植性、兼容性、可维护性、错误的恢复功能等进行确认。验收测试的目的是向客户和承包人证明产品是可靠的。为了做到这点

22、,验收测试必须满足的条件是集中进行用户需求的测试;必须由用户或用户代表参加,并在正常的条件下进行系统测试。验收测试一般由用户执行,首先在客户合同的基础上,确定测试用例,这些案例的选择试图证明系统没有履行合同,如果测试用例成功,则说明系统是可以接受和能够发行的。验收标准必须在原始的需求规范中或在客户的合同中规定。五、产品发布通过确认的系统发布后,对功能的改进,界面的修改需要提起修改人追加文档说明。软件产品发布须符合以下标准:完成计划中所有的工作实现了需求定义的所有功能特性完成所有的测试严重的缺陷都已修正新发现的缺陷趋于稳定并接近零产品、文档都已就绪软件产品未经测试合格,不允许发布。六、常用的测试

23、方法1、功能测试功能测试又称正确性测试,它检查软件的功能是否符合规格说明。由于正确性是软件最重要的质量因素,所以其测试也是最重要。功能测试的基本方法是构造一些合理输入、检查是否得到期望的输出。在测试中通常使用的技术有等价类划分、边界值分析法、因果图法、比较测试法等。2、性能测试检查系统是否满足在需求说明书中规定的性能,主要测试软件处理事务的速度,包括:用户响应时间,系统响应时间,外部接口响应时间,CPU 的使用,内存的使用等。性能测试通常要使用自动化测试工具来进行。在进行性能测试时应注意以下几点。 计算机的运行速度都很快,通常是在人还来不及反应的情况下就结束了,所以不要试图手工用秒表记录时间,

24、应该编写一段相应的程序或者使用专门的工具去计量软件的运行时间。 应该分别测试软件在标准配置和最低配置情况下的性能。 不仅要记录软件硬件环境,还要记录多用户并发工作情况。 为了排除干扰,应当关闭其他用户软件,尤其是比较耗内存或 CPU 的应用程序,比如杀毒软件。 系统要测试的性能的种类可能比较多,应该分别赋予唯一的名称,不可笼统地使用“性能”两字。例如,文档管理软件的性能就包含“文件上载速度” 、 “文件下载速度”等多个性能参数。 不同的输入情况会得到不同的性能数据,应当分档记录。例如,传输文件的容量从100KB 到 1MB 就可以分为几个等级。 由于环境的波动,同一种输入情况在不同的时间可能得

25、到不同的性能数据,可以取平均值。3、压力测试压力测试的主要任务就是获取系统正常运行的极限,检查系统在瞬间峰值负荷下正确执行的能力。例如,对服务器做压力测试时就可以增加并发操作的用户数量;或者不停地向服务器发送请求;或一次性向服务器发送特别大的数据等。看看服务器保持正常运行所能达到的最大状态。人们通常使用测试工具来完成压力测试,如模拟上万个用户从终端同时登录,这是压力测试中常常使用的方法。4、负载测试用于检查系统在使用大量数据的时候正确工作的能力,即检查系统的能力最高能达到什么程度。例如,对于信息检索系统,让它使用频率达到最大;对于多个终端的分时系统,让它所有的终端都开动。在使整个系统的全部资源

26、达到“满负荷”的情形下,测试系统的承受能力。5、易用性测试主要从使用的合理性和方便性等角度对软件系统进行检查,发现人外因素或使用上的问题。在保证足够详细的程度下,用户界面要便于使用,对输入的响应时间和响应方式合理,输出有意义、正确,出错信息能够引导用户去解决问题,文档全面,确切等。易用性测试多数情况下没有一个量化的指标,主观性较强。6、安装测试对软件的全部、部分或升级安装卸载处理过程的测试。保证正确安装硬件和软件,创建所有必需的问题和连接,加载所有适当的数据文件,正确设置默认值,与其他系统或外设的接口都能正常工作。7、界面测试界面测试是满足用户需求的最基本测试。主要包括:窗口测试,下拉式菜单和

27、鼠标操作,数据项测试。8、配置测试主要检查计算机系统内各个设备或各种资源之间的相互连接和功能分配中的错误。主要包括:验证全部配置命令的可操作性,软件配置,硬件配置,利用手动或自动方式进行配置状态间的转换。9、文档测试文档测试主要检查文档的正确性、完备性和可理解性。用户文档中所使用的例子必须在测试中一一试过,确保叙述正确的无误。通常使用文档评审和交叉引用检查。10、兼容性测试主要验证软件产品在不同版本之间的兼容性。包括向下兼容和交错兼容,向下兼容是测试软件新版本保留它早期版本的功能的情况;交错兼容是验证共同存在的两个相关但贝同的产品之间的兼容性。11、安全性测试检查系统对非法侵入的防范能力,检验系统中已经存在的系统安全性、保密性措施是否发挥作用,有无漏洞。在进行安全测试时,测试人员假扮非法入侵者,采用各种办法试图突破防线。系统安全设计的准则是,使非法侵入的代价超过被保护信息的价值。12、恢复测试主要检查系统的容错能力。当系统出错时,能否在指定时间间隔内修正错误并恢复“正常”状态,不对系统造成任何伤害。恢复测试首先要通过各种手段,让软件强制性地发生故障,然后验证系统是否能尽快恢复。对于自动恢复,需验证重系统初始化、检查点、数据恢复和重新启动等机制的正确性;对于人工干预的恢复系统,还需估测平均修复时间,确定其是否在可接受的范围内。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 实用文档 > 规章制度

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报