软件测试基础知识总结_第1页
软件测试基础知识总结_第2页
软件测试基础知识总结_第3页
软件测试基础知识总结_第4页
软件测试基础知识总结_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

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

文档简介

一、什么是软件测试?

1979年,myer:软件测试就是为了发现错误而执行程序或系统的过程。

1983年,IEEE:软件测试即使用人工或自动手段来运行或测试某个系统的过程,其日

的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。

二、现代软件测试活动的内容?

制定测试计划、设计测试用例、实施测试、提交缺陷报告、测试总结

三、软件测试的目的?

GrenfordJ.Myers在《TheArtofSoftwareTesting》一书中的观点:

1、测试是程序的执行过程,目的在于发现错误

2、一个成功的测试用例在于发现至今未发现的错误

3、一个成功的测试是发现了至今未发现的错误的测试

简单的说,测试的根本目的就是确保最终交给用户的产品符合用户的需求,在产品交给

用户之前尽可能多的发现并改正问题。

四、测试一般要达到的目标?

确保产品完成了它所承诺或公布的功能,并且用户可以访问到的功能都有明确的书面说

明;

确保产品满足性能和效率的要求;

确保产品是健壮的和适应用户环境的。

五、软件测试分类?

1、按测试策略分类:

a静态测试与动态测试

静态测试

定义:不运行被测程序本身而寻找程序代码中可能存在的错误或评估程序代码的过程。

Ps:通过分析或检查源程序的文法、结构、过程、接I」等来检验程序的正确性,找出

缺陷和可疑之处,例如不匹配的参数、不适当的分支嵌套和循环嵌套、未使用过的变量、空

指针的引用等;可采用人工和软件工具进行;静态测试工具的代表:telelogic公司的

logiscope软件、PR公司的PRQA软件等。

静态测试特点:

不必动态地运行程序,也不必进行测试用例设计和结果判断等工作;

可由人工进行,充分发挥人得逻辑思维优势;

不需要特别的条件,容易展开。

静态测试要点:

代码审查(codeinspectioncodereview)%代码走查(walkthrough)>桌面检查、技术评审

(软件需求分析和设计评审)、静态分析(使用软件工具,包括控制流分析、数据流分析、

接口分析和表达式分析)

动态测试

定义:实际运行被测程序,输入相应的测试实例,检查运行结果和预期结果的差异,判

断执行结果是否符合要求,从而检验程序的正确性、可靠性和有效性,并分析系统运行效率

和健壮性等性能。

组成:构造测试实例、根据测试实例运行程序、分析程序的输出结果。

主要方法:黑盒测试和白盒测试。

动态测试特点:

实际运行被测试程序,取得程序运行的真实情况、动态情况,并进行分析;

必须生成测试数据来运行程序,洌试质量依赖于测试数据:

生成测试数据、分析测试结果工作量大,使开展测试工作费时、费力、费人;

动态测试中涉及多方面工作,人员多、设备多、数据多,要求有较好的管理和工作规程。

b黑盒测试和白盒测试

黑盒测试(black-boxtesting)又称功能测试、数据驱动测试、基于规格说明书的测试。

定义:测试者把被测程序看成一个黑盒,不考虑程序的内部结构和特性,只需知道该程

序输入和输出之间的关系和程序功能,依靠能够反映这一关系和程序功能的需求规格说明

书,来确定测试用例和推断测试结果的正确性。

白盒测试(white-boxtesting)又称结构测试、逻辑驱动测试、基于程序本身的测试。

定义:从程序的内部逻辑结构入手,按照一定的原则设计测试用例,对软件的逻辑路径

进行测试,在程序的不同点检查程序的状态,来判定其实际情况是否和预期的状态一致。

黑盒测试白盒测试

规划方面针对功能的测试针对结构的测试

适用范围进行确认测试和系统测试时使用进行单元测试时使用

优势能确保从用户使用的角度出发进行能够对程序内部的特定部位进行覆盖

测试测试

缺陷无法测试程序内部特定部位;如果需无法检验程序的外部特性;无法对未实

求说明有误,则无法发现问题现规格说明的程序内部欠缺部分进行

测试

应用举例等价类划分(将所有可能的输入数据语句覆盖(程序中每条语句至少被执行

划分为若干等价类,选择有代表性的一次);

当做测试用例进行测试);判断覆盖(或分支覆盖,程序中每个分

边界值分析法(对输入或输出的边界支至少走查过一次);

值进行测试);条件覆盖(判定式中若含多个条件,则

因果图法(利用图解法分析输△的各每个条件的取值均要得到检验);

种组合的情况,从而设计测试用例的判断/条件覆盖(同时考虑条件的组合

方法。“因”即输入条件,“果”即输值及判定结果的检验);

出或程序状态的改变):基本路径的覆盖(使程序沿所有可能的

比较测试法路径执行);

循环覆盖;模块接口测试

C手工测试与自动测试

手工测试

定义:由测试人员来执行测试用例,然后根据实际的结果去和预期的结果相比较并记录

测试结果。手工测试时现在多数公司使用的测试形式。

自动测试

定义:引入自动测试工具。

通常以手工测试为主,自动测试为辅。

d冒烟测试(smoketest):在版本投入正式测试前,对其重要的步伐先进行大概的测试,看

系统重要的功能是否正确,再进行彻底的测试。

e回归测试(regressiontest):一段时间以后对以前修复过的缺陷重新进行测试,看该缺陷

是否会重新出现。

2、按测试阶段分类

单元测试又称模块测试

定义:针对每一个程序模块进行正确性检验,检查各个程序模块是否正确的实现了规定

的功能。如一个窗口、函数、菜单、报表或一个存储过程。

依据是详细设计,应对所有重要的控制路径设计测试用例。

集成测试乂称综合测试。

定义:在单元测试的基础上,将已经通过测试的单元模块按照设计要求组装成系统或子

系统,再进行的测试。

系统测试

定义:是将通过确认测试的软件,作为整个基于计算机系统的一个元素,与计算机硬件、

外设、某些支持软件、数据和人员等其他系统元素结合在一起,在实际运行环境下,对计算

机系统进行全面的功能覆盖。

单元测试一一集成测试一一确认测试(有效性测试、软件配置审查)一一系统测试一

验收测试(以用户为主)

测试类型对象目的测试依据测试方法

单元测试模块内部的程序清除局部模块的逻辑模块逻辑设计,大量采用白盒测

错误和功能上的错误和缺模块外部说明试方法

集成测试模块间的集成和找出与软件设计相关程序结构设计白盒与黑盒相结

调用关系的程序结构,模块调用合的测试方法,

关系,模块间接口方面较多用黑盒方法

的问题构造测试用例

系统测试整个系统,包括对整个系统进行一系系统结构设计,黑盒测试

系统中的软、硬列的整体、有效性测试目标说明书,需

件求说明书

3、其他常见测试方法

功能测试(functiongtesting)又称正确性测试,软件的功能是否符合规格说明;

性能测试(performancetesting),系统是否满足需求说明书中规定的性能,通常使用自动

化测试工具;

压力测试(stresstesting):检查系统在瞬间峰值负荷下正确执行的能力,通常用测试工

具测试;

负载测试(volumetesting):用于检查系统在使用大量数据时正确工作的能力;

易用性测试(usabilitytesting):合理性、方便性;

安装测试(installationtesting):对软件的全部、部分或升级安装/卸载处理过程的测试;

界面测试:包括窗口测试、下拉式菜单和鼠标操作、数据项测试;

配置测试(configurationtesting):主要检查计算机系统内各个设吝或各种资源之间的相

互连接和功能分配中的错误。包括验证全部配置命令的可操作性,软件配置,硬件配置,利

用手动或自动方式惊喜配置状态间的转换;

文档测试(documentationtesting):文档的正确性、完备性、可理解性;

兼容性测试(compatibilitytesting):产品在不同产品之间的兼容性;

安全性测试(securitytesting):非法侵入的防范能力,已存在的安全性、保密性,有无

漏洞;

恢复测试(recoverytesting):容错能力,在指定的时间内修正错误并恢复正常,又不伤

害系统。

六:软件的开发周期(软件生命周期)和模型?

瀑布模型:

计划一一需求分析一一设计一一编码一一测试一一运行、维护

严格按照固定顺序,每个阶段结束,经过项目小组审查,决定是否进入下一步。

螺旋模型:

确定目标、可选方案和现在条件一一指出并解决风险一一评估方案一一本阶段开发和测试一

一计划下一阶段一一确定进入下一阶段的方法(该过程重复进行)

螺旋模型是瀑布模型的发展,较常用。

七、软件测试生命周期?

制定测试计划一一测试设计和开发一一实施软件测试一一评审一一版本发布

八、什么是软件的缺陷(bug)?

定义:在软件使用过程中所出现的任何问题,或者导致软件不能符合设计要求或满足消

费者需求的问题。包括程序错误等等。

九、书写缺陷报告的准则?

保证重现缺陷:分析故障,使用最少步骤重现缺陷:包含所有重现缺陷的必要步骤;方

便阅读(编号,分步骤);尽量简单(一个缺陷一个报告);注意语气。

识别和判断缺陷的辅助工具:软件需求说明书、用户手册、联机帮助。

十、bug的生命周期?

有效地记录BUG;

使用BUG模板;

评价BUG优先级和严重性;

BUG的生命;

维护BUG数据库。

H"•一'、bug的类型?

软件没有实现产品规格说明所要求的功能模块;

软件中出现了产品规格说明指明不应该出现的错误;

软件实现了产品规格说明没有提到的功能模块;

软件没有实现虽然产品规格说明没有明确提及但应该实现的目标;

软件难以理解,不容易使用,运行缓慢,或从测试员的角度看,最终用户会认为不好。

功能缺陷;规格说明书、能功、测试

系统缺陷:内部接口、硬件、操作系统、软件结构、控制与顺序、资源

加工缺陷:算术、初始化、控制与次序、静态逻辑、其他

数据缺陷:类型、结构、初始值、其他

代码缺陷:程序编写、文档、其他

十二、bug中通常包含的内容????

硬件平台和操作系统

版本

Bug报告优先级

Bug状态

报告人reporter

指定处理人assignedto

概述summary

邮件抄送列表CClist

从属关系(bug"ID"dependson,bug"ID"block)

附加描述additionalcomments

十三、bug中的优先级的定义?

优先级表示修复缺陷的重要程度和应该何时修复:

1应立即修复的问题

2在产品发布之前必须修复的问题

3如果时间允许应该修复的问题

4可以在发布版本中存在的问题

缺陷的二八定理:一般情况下,在分析、设计、实现阶段的复查和测试工作能够发现和避免

80%的缺陷,而系统测试又能找到剩余缺陷的80%,最后的4%的缺陷可能只有在用户大范

围、长时间使用后才会暴露出来。

十四、什么是测试用例?

定义:指为实施测试而向被测试系统提供的输入数据、操作或各种环境设置以及期望结

果的一个特定的集合。换句话说,测试用例就是记下要进行什么测试,进行测试的具体步骤,

以及测试执行是否正确的标准。

测试用例控制软件测试的执行过程。

十五、测试用例包含的内容?

项目名称:指明本测试用例是用例测试什么软件项目的

功能模块名:指明要测试的内容

测试目的:描述被测试功能的详细的特性及要测试的目标

预置条件:执行测试用例之前所做的操作,如启动程序等

用例编号:唯一编号

相关用例:列出必须先于本洌试用例执行的测试用例

用例说明:描述实现用例的步骤

输入数据:描述测试用例所需的输入数据或条件

预期结果:输入后应该输出的结果

测试结果:此项在测试执行时填写,说明测试用例是否通过,如果不通过,就要生成缺

陷报告,并注明缺陷的编号,这里的缺陷编号要与缺陷跟踪系统中的编号一致。

十六、设计测试用例的方法?

1等价类划分法

定义;测试人员要对需求规格说明书中的各项需求,尤其是功能需求进行细致分析,然

后把程序的输入域划分为若干个部分,从每个部分中选取少数代表性数据作为测试用例。经

过这种划分后,每一类的代表性数据在测试中的作用都等价于这一类中的其他值。

等价类划分法是一种最典型的黑盒测试法。

步骤:在进行等价类划分之前,首先从程序的功能说明中找出各个输入条件,然后为每

个输入条件划分两个或更多个等价类。确定了等价类划分后,给出相应的等价类表,再根据

等价类表给出测试用例。

要同时考虑有效等价类和无效等价类。

2边界值方法

定义:对输入和输出的边界值进行测试的黑盒测试方法。

确定边界值:选取正好等于、刚刚大于、刚刚小于边界的值作为测试数据,即中的测试

最后一个肯定合法的数据和刚刚超过边界的非法数据。

边界值法是等价类划分方法的补充。

3因果图

定义:考虑输入条件之间的联系、相互组合。

步骤:

分析软件需求说明的描述中的原囚(即输入条件或输入条件的等价类)、结

温馨提示

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

评论

0/150

提交评论