版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件测试工工程师入门门之软件测测试基础责任编辑: HYPERLINK /user/%cf%fe%d0%dc/ 晓熊作者:ITPUUB论坛 HYPERLINK /10004/2009/2009-04-14.shtml 20099-04-14 【内容导航航】 第1页: HYPERLINK /a2009/0414/272/000000272122.shtml o 软件测试概述 软软件测试概概述 第2页: HYPERLINK /a2009/0414/272/000000272122_1.shtml o 软件测试的类型 软软件测试的的类型 文本Tagg: HYPERLINK /lists/5987/0/
2、5987.shtml 软件件测试 【ITT168 技术文档档】一、 HYPERLINK / o 软件 软软件测试概概述软件测测试是软件件开发过程程的重要组组成部分,是是用来确认认一个程序序的品质或或性能是否否符合开发发之前所提提出的一些些要求。软软件测试的的目的,第第一是确认认软件的质质量,其一一方面是确确认软件做做了你所期期望的事情情(Do the righht thhing),另一方方面是确认认软件以正正确的方式式来做了这这个事件(Do iit riight)。第二是是提供信息息,比如提提供给开发发人员或程程序经理的的反馈信息息,为风险险评估所准准备的信息息。第三软软件测试不不仅是在测测试
3、软件产产品的本身身,而且还还包括软件件开发的过过程。如果果一个软件件产品开发发完成之后后发现了很很多问题,这这说明此软软件开发过过程很可能能是有缺陷陷的。因此此软件测试试的第三个个目的是保保证整个软软件开发过过程是高质质量的。软件质质量是由几几个方面来来衡量的:一、在正正确的时间间用正确的的的方法把把一个工作作做正确(Doinng thhe riight thinngs rrightt at the righht tiime.)。二、符符合一些应应用标准的的要求,比比如不同国国家的用户户不同的操操作习惯和和要求,项项目工程中中的可维护护性、可测测试性等要要求。三、质量本身身就是软件件达到了最最
4、开始所设设定的要求求,而代码码的优美或或精巧的技技巧并不代代表软件的的高质量(Quallity is ddefinned aas coonforrmancce too reqquireementts, nnot aas “gooddnesss” or “eleggancee”.)。四四、质量也也代表着它它符合客户户的需要(Quallity alsoo meaans “meett cusstomeer neeeds”.)。作作为软件测测试这个行行业,最重重要的一件件事就是从从客户的需需求出发,从从客户的角角度去看产产品,客户户会怎么去去使用这个个产品,使使用过程中中会遇到什什么样的问问题。只有有
5、这些问题题都解决了了,软件产产品的质量量才可以说说是上去了了。测试人人员在软件件开发过程程中的任务务:1、寻寻找Bugg;2、避避免软件开开发过程中中的缺陷;3、衡衡量软件的的品质;4、关关注用户的的需求。总的目目标是:确确保软件的的质量。二、常常用的软件件测试方法法1. 黑盒测试试黑盒测测试顾名思思义就是将将被测系统统看成一个个黑盒,从从外界取得得输入,然然后再输出出。整个测测试基于需需求文档,看看是否能满满足需求文文档中的所所有要求。黑盒测试试要求测试试者在测试试时不能使使用与被测测系统内部部结构相关关的知识或或经验,它它适用于对对系统的功功能进行测测试。黑盒测测试的优点点有:1)比比较简
6、单,不不需要了解解程序内部部的代码及及实现;2)与与软件的内内部实现无无关;3)从从用户角度度出发,能能很容易的的知道用户户会用到哪哪些功能,会会遇到哪些些问题;4)基基于软件开开发文档,所所以也能知知道软件实实现了文档档中的哪些些功能;5)在在做软件自自动化测试试时较为方方便。黑盒测测试的缺点点有:1)不不可能覆盖盖所有的代代码,覆盖盖率较低,大大概只能达达到总代码码量的300%;2)自自动化测试试的复用性性较低。2. 白盒测试试白盒测测试是指在在测试时能能够了解被被测对象的的结构,可可以查阅被被测代码内内容的测试试工作。它它需要知道道程序内部部的设计结结构及具体体的代码实实现,并以以此为基
7、础础来设计测测试用例。如下例程程序代码:HREESULTT Plaay( cchar* pszzFileeNamee )if ( NUULL = psszFilleNamme )retturn;if ( STTATE_OPENNED = cuurrenntStaate )PlaayTheeFilee();retturn;读了代代码之后可可以知道,先先要检查一一个字符串串是否为空空,然后再再根据播放放器当前的的状态来执执行相应的的动作。可可以这样设设计一些测测试用例:比如字符符串(文件件)为空的的话会出现现什么情况况;如果此此时播放器器的状态是是文件刚打打开,会是是什么情况况;如果文文件已经在在
8、播放,再再调用这个个函数会是是什么情况况。也就是是说,根据据播放器内内部状态的的不同,可可以设计很很多不同的的测试用例例。这些是是在纯粹做做黑盒测试试时不一定定能做到的的事情。白盒测测试的直接接好处就是是知道所设设计的测试试用例在代代码级上哪哪些地方被被忽略掉,它它的优点是是帮助软件件测试人员员增大代码码的覆盖率率,提高代代码的质量量,发现代代码中隐藏藏的问题。白盒测测试的缺点点有:1)程程序运行会会有很多不不同的路径径,不可能能测试所有有的运行路路径;2)测测试基于代代码,只能能测试开发发人员做的的对不对,而而不能知道道设计的正正确与否,可可能会漏掉掉一些功能能需求;3)系系统庞大时时,测试
9、开开销会非常常大。3. 基于风险险的测试基于风风险的测试试是指评估估测试的优优先级,先先做高优先先级的测试试,如果时时间或精力力不够,低低优先级的的测试可以以暂时先不不做。有如如下一个图图,横轴代代表影响,竖竖轴代表概概率,根据据一个软件件的特点来来确定:如如果一个功功能出了问问题,它对对整个产品品的影响有有多大,这这个功能出出问题的概概率有多大大?如果出出问题的概概率很大,出出了问题对对整个产品品的影响也也很大,那那么在测试试时就一定定要覆盖到到。对于一一个用户很很少用到的的功能,出出问题的概概率很小,就就算出了问问题的影响响也不是很很大,那么么如果时间间比较紧的的话,就可可以考虑不不测试。
10、基于风风险测试的的两个决定定因素就是是:该功能能出问题对对用户的影影响有多大大,出问题题的概率有有多大。其其它一些影影响因素还还有复杂性性、可用性性、依赖性性、可修改改性等。测测试人员主主要根据事事情的轻重重缓急来决决定测试工工作的重点点。4. 基于模型型的测试模型实实际上就是是用语言把把一个系统统的行为描描述出来,定定义出它可可能的各种种状态,以以及它们之之间的转换换关系,即即状态转换换图。模型型是系统的的抽象。基基于模型的的测试是利利用模型来来生成相应应的测试用用例,然后后根据实际际结果和原原先预想的的结果的差差异来测试试系统,过过程如下图图所示。三、 HYPERLINK / o 软件 软
11、件测测试的类型型常见的的软件测试试类型有:BVTT (Buuild Veriificaationn Tesst)BVTT是在所有有开发工程程师都已经经检入自己己的代码,项项目组编译译生成当天天的版本之之后进行,主主要目的是是验证最新新生成的软软件版本在在功能上是是否完整,主主要的软件件特性是否否正确。如如无大的问问题,就可可以进行相相应的功能能测试。BBVT优点点是时间短短,验证了了软件的基基本功能。缺点是该该种测试的的覆盖率很很低。因为为运行时间间短,不可可能把所有有的情况都都测试到。Sceenariio Teests(基于用户户实际应用用场景的测测试)在做BBVT、功功能测试的的时候,可可
12、能测试主主要集中在在某个模块块,或比较较分离的功功能上。当当用户来使使用这个应应用程序的的时候,各各个模块是是作为一个个整体来使使用的,那那么在做测测试的时候候,就需要要模仿用户户这样一个个真实的使使用环境,即即用户会有有哪些用法法,会用这这个应用程程序做哪些些事情,操操作会是一一个怎样的的流程。加加了这些测测试用例后后,再与BBVT、功功能测试配配合,就能能使软件整整体都能符符合用户使使用的要求求。Sceenariio Teests优优点是关注注了用户的的需求,缺缺点是有时时候难以真真正模仿用用户真实的的使用情况况。Smooke TTest在测试试中发现问问题,找到到了一个BBug,然然后开
13、发人人员会来修修复这个BBug。这这时想知道道这次修复复是否真的的解决了程程序的Buug,或者者是否会对对其它模块块造成影响响,就需要要针对此问问题进行专专门测试,这这个过程就就被称为SSmokee Tesst。在很很多情况下下,做Smmoke Testt是开发人人员在试图图解决一个个问题的时时候,造成成了其它功功能模块一一系列的连连锁反应,原原因可能是是只集中考考虑了一开开始的那个个问题,而而忽略其它它的问题,这这就可能引引起了新的的Bug。Smokke Teest优点点是节省测测试时间,防防止buiild失败败。缺点是是覆盖率还还是比较低低。此外,AAppliicatiion CCompa
14、atibiilityy Tesst(兼容容性测试),主要目目的是为了了兼容第三三方软件,确确保第三方方软件能正正常运行,用用户不受影影响。Acccesssibillity Testt(软件适适用性测试试),是确确保软件对对于某些有有残疾的人人士也能正正常的使用用,但优先先级比较低低。其它的的测试还有有Funcctionnal TTest(功能测试试)、Seecuriity TTest( HYPERLINK / o 安全 安全性测试试)、Sttresss Tesst(压力力测试)、Perfformaance Testt(性能测测试)、RRegreessioon Teest(回回归测试)、Sett
15、up/UUpgraade TTest(安装升级级测试)等等。四、微微软的软件件测试工作作1. 基本情况况测试在在微软公司司是一项非非常重要的的工作,微微软公司在在此方面的的投入是非非常巨大的的。微软对对测试的重重视表现在在工程开发发队伍的人人员构成上上,微软的的项目经理理、软件开开发人员和和测试人员员的比例基基本是1:3:3或或1:4:4,可以以看出开发发人员与测测试人员的的比例是11:1。对对于测试的的重视还表表现在最后后产品要发发布的时候候,此产品品的所有相相关部门都都必须签字字,而测试试人员则具具有绝对的的否决权。测试人人员中分成成两种职位位,Sofftwarre Deeveloopme
16、nnt Enngineeer iin Teest(测测试组的软软件开发工工程师)实实际上还是是属于开发发人员,他他们具备编编写代码的的能力和开开发工具软软件的经验验,侧重于于开发自动动化测试工工具和测试试脚本,实实现测试的的自动化。Softtwaree Tesst Enngineeer(软软件测试工工程师)具具体负责测测试软件产产品,主要要完成一些些手工测试试以及安装装配置测试试。2. 测试计划划测试计计划是测试试人员管理理测试项目目,在软件件中寻找BBug的一一种有效的的工具。测测试计划主主要有两个个作用,一一是评判团团队的测试试覆盖率以以及效率,让让测试工作作很有条理理的逐步展展开。二是是
17、有利于与与项目经理理、开发人人员进行沟沟通。有了了测试计划划之后,他他们就能够够知道你是是如何开展展测试工作作的,他们们也会从中中提出很多多有益的意意见,确保保测试工作作顺利进行行。总之,有有了测试计计划可以更更好的完成成测试工作作,确保用用户的满意意度。测试人人员在编写写测试计划划之前,应应获得以下下文档:1)程程序经理编编写的产品品功能说明明书或产品品开发计划划;2)程程序经理或或开发人员员提供的开开发进度表表。根据产产品的特性性及开发进进度安排,测测试人员制制定具体的的测试计划划。测试计计划通常包包括以下内内容:1)测测试目标和和发布条件件:a. 给出清晰晰的测试目目标描述;b. 定义产
18、品品的发布条条件,即在在达到何种种测试目标标的前提下下才可以发发布产品的的某个特定定版本。2)待待测产品范范围:a. 软件主要要特性/功功能说明,即即待测软件件主要特性性的列表;b. 特性/功功能测试一一览,应涵涵盖所有特特性、对话话框、菜单单和错误信信息等待测测内容,并并列举每个个测试范围围内要重点点考虑的关关键功能。3)测测试方法描描述:a. 定义测试试软件产品品时使用的的测试方法法;b. 描述每一一种特定的的测试方法法可以覆盖盖哪些测试试范围。4)测测试进度表表:a. 定义测试试里程碑;b. 定义当前前里程碑的的详细测试试进度。5)测测试资源和和相关的程程序经理/开发工程程师:a. 定义
19、参与与测试的人人员;b. 描述每位位测试人员员的职责范范围;c. 给出与测测试有关的的程序经理理/开发工工程师的相相关信息。6)配配置范围和和测试工具具:a. 给出测试试时使用的的所有计算算机平台列列表;b. 描述测试试覆盖了哪哪些硬件设设备;c. 测试时使使用的主要要测试工具具。此外,还还应列出测测试中可能能会面临的的风险及测测试的依赖赖性,即测测试是否依依赖于某个个产品或某某个团队。比如此项项测试依赖赖性WinndowssCE这个个 HYPERLINK /list/b/0501_1.shtml o 操作系统 操作系统统,而这个个系统要明明年2月份份才能做好好,那么此此项测试就就可能只有有在
20、明年55月份才能能完成,这这样就存在在着依赖关关系。如果果那个团队队的开发计计划往后推推,则此项项测试也会会被推迟。3. 测试用例例开发一个好好的测试用用例就是有有一个合理理的概率来来找到Buug,不要要冗余,要要有针对性性,一个测测试只针对对一件事情情。特别是是功能测试试的时候,如如果一个测测试是测了了两项功能能,那么如如果测试结结果失败的的话,就不不知道到底底是哪项功功能出了问问题。测试用用例开发中中主要使用用的技术有有等价类划划分,边界界值的分析析,Errror GGuesssing Testting。等价类类划分是根根据输入输输出条件,以以及自身的的一些特性性分成两个个或更多个个子集,
21、来来减少所需需要测试的的用例个数数,并且能能用很少的的测试用例例来覆盖很很多的情况况,减少测测试用例的的冗余度。在等价类类划分中,最最基本的划划分是一个个为合法的的类,一个个为不合法法的类。边界值值的分析是是利用了一一个规律,即即程序最容容易发生错错误的地方方就是在边边界值的附附近,它取取决于变量量的类型,以以及变量的的取值范围围。一般对对于有n个个变量时,会会有6n+1个测试试用例,取取值分别是是min-1, mmin, min+1, nnormaal, mmax-11, maax,maax+1的的组合。边边界值的分分析的缺点点,是对逻逻辑变量和和布尔型变变量不起作作用,还有有可能会忽忽略掉
22、某些些输入的组组合。Errror GGuesssing Testting完完全靠的是是经验,所所设计的测测试用例就就是常说的的猜测。感感觉到软件件在某个地地方可能出出错,就去去设计相应应的测试用用例,这主主要是靠实实际工作中中所积累的的经验和知知识。其优优点是速度度快,只要要想得到,就就能很快设设计出测试试用例。缺缺点就是没没有系统性性,无法知知道覆盖率率会有多少少,很可能能会遗漏一一些测试领领域。实际上上在微软是是采用一些些专门的软软件或工具具负责测试试用例的管管理,有一一些测试信信息可以被被记录下来来,比如测测试用例的的简单描述述,在哪些些平台执行行,是手工工测试还是是自动测试试,运行的的
23、频率是每每天运行一一次,还是是每周运行行一次。此此外还有清清晰的测试试通过或失失败的标准准,以及详详细记录测测试的每个个步骤。4. Bug跟跟踪过程在软件件开发项目目中,测试试人员的一一项最重要要使命就是是对所有已已知Bugg进行有效效的跟踪和和管理,保保证产品中中出现的所所有问题都都可以得到到有效的解解决。一般般地,项目目组发现、定位、处处理和最终终解决一个个Bug的的过程包括括Bug报报告、Buug评估和和分配、BBug处理理、Bugg关闭等四四个阶段:1)测测试工程师师在测试过过程中发现现新的Buug后,应应向项目组组报告该BBug的位位置、表现现、当前状状态等信息息。项目组组在Bugg数据库中中添加该BBug的记记录。2)开开发经理对对已发现的的Bug进进行集中讨讨论,根据据Bug对对软件产品品的影响来来评估Buug的优先先级,制定定Bug的的修正策略略。按照BBug的优优先级顺序序和开发人人员的工作作安排,开开发经理将将所有需要要立即处理理的Bugg分配给相相应的开发发工程师。3)开开发工程师师根据安排排对特定的的Bug进进行处理,找找出代码中中的错误原原因,修改改代码,重重新生成产产品版本。4
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 最可爱的人课件大班
- 玻璃课件教学课件
- 《流程培训课件》课件
- 山东省泰安市宁阳县2024-2025学年七年级上学期期中考试英语试题
- 2022年江苏省公务员录用考试《行测》真题(B类)及答案解析
- 2022年公务员多省联考《申论》真题(辽宁A卷)及答案解析
- 语文《相信未来》课件
- 《演绎培训课程设计》课件
- 《水生生物学》课件
- 石油专用抽油泵产业规划专项研究报告
- 宁夏回族自治区银川市2025届高三上学期第三次月考数学试卷含答案
- 2024-2030年中国净菜加工行业市场营销模式及投资规模分析报告
- 中国视觉小说行业现状调查与竞争趋势分析研究报告(2024-2030版)
- 仓储物流中心物业安全管理
- 咨询师基础心理学课件
- 医疗器械注册专员培训
- 生物丨金太阳(25-69C)广东省2025届高三10月大联考生物试卷及答案
- 期中测试卷(试题)2024-2025学年人教版数学三年级上册
- 冷库保洁服务方案
- 中国戏曲 昆曲学习通超星期末考试答案章节答案2024年
- 2024-2030年中国移动云行业市场发展趋势与前景展望战略研究报告
评论
0/150
提交评论