软件测试复习由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“软件测试复习重点”。
软件测试的定义:
软件测试是为了发现错误而执行程序的过程”,明确提出了“寻找错误”是测试的目的。
使用人工或自动手段运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清楚预期结果与实际结果之间的差别”。软件测试是一种重要的软件质量保证活动,包括“分析”软件和“运行”软件,是软件质量保证的关键步骤。测试用例: 测试用例是为特定的目的而设计的一组测试输入、执行条件和预期的结果;测试用例是执行测试的最小实体。为什么要设计测试用例:
1.在开始实施测试之前设计好测试用例,可以避免盲目测试并提高测试效率。2.测试用例的使用令软件测试的实施重点突出、目的明确。3.在软件版本更新后只需修正少部分的测试用例便可展开测试工作,降低工作强度、缩短项目周期。4.功能模块的通用化和复用化使软件易于开发,而相对于功能模块的测试用例的通用化和复用化则会使软件测试易于开展,并随着测试用例的不断精化其效率也不断攀升
软件测试的对象: 需求规格说明 概要设计规格说明 详细设计规格说明 源程序
软件测试的目的(1)测试是程序的执行过程,目的在于发现错误;不能证明程序的正确性,除非仅处理有限种情况。2)检查系统是否满足需求也是测试的期望目标。(3)一个好的测试用例在于能发现还未曾发现的错误;一次成功的测试则是发现了至今未发现的错误的测试。
软件测试模型: V模型、W模型、H模型、X模型
软件缺陷的定义:最终产品同用户的期望不一致。功能错误 功能遗漏 超出需求的部分
性能不符合要求 软件测试人员认为软件难以理解、不易使用,或者最终用户认为该软件使用效果不良。
软件缺陷产生的原因:软件产品说明书(需求)56% 编写代码7% 设计27% 其他10%
缺陷的管理:缺陷严重程度;严重、较大、较小、轻微 缺陷优先级;立即、排队、不紧急缺陷状态;提交、打开、拒绝、解决、关闭
黑盒测试法的概念
黑盒测试被称为功能测试或数据驱动测试。在测试时,把被测程序视为一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下进行。
黑盒测试主要根据规格说明书设计测试用例,并不涉及程序内部构造和内部特性,只依靠被测程序输入和输出之间的关系或程序的功能设计测试用例,检查程序功能是否按照规格说明书的规定正常使用。
如何划分等价类:
1)如果输入条件规定了取值范围或值的个数就可确定一个有效等价类和两个无效等价类
(2)输入条件规定了输入值的集合,或是规定了“必须如何”的条件,则可确定一个有效等价类和一个无效等价类
(3)如果输入条件是一个布尔量,则可以确立一个有效等价类和一个无效等价类。
(4)如果规定了输入数据的一组值, 且程序要对每一个输入值分别进行处理, 要对每一个规定的输入值确立一个有效等价类,而对于这组值之外的所有值确立一个无效等价类。
(5)如果规定了输入数据必须遵循的规则,可确定一个有效等价类和若干个无效等价类(从不同角度违反规则)。
(6)如已划分的等价类各元素在程序中的处理方式不同,则应将此等价类进一步划分成更小的等价类。
用等价类设计测试用例步骤
(1)划分等价类,形成等价类表(2)设计一新的测试用例,使其尽可能多地覆盖尚未覆盖的有效等价类,重复这一步骤,直到所有的有效等价类都被覆盖为止;(3)设计一新测试用例,使其只覆盖一个无效等价类,重复这一步骤直到所有无效等价类均被覆盖;
等价类测试的分类: 单缺陷与多缺陷假设产生弱等价类与强等价类测试之分;是否进行无效数据的处理产生健壮与一般等价类测试之分;
等价类测试的分类:弱一般等价类测试 强一般等价类测试 弱健壮等价类测试 强健壮等价类测试
边界值分析法:对输入或输出的边界值进行测试的一种黑盒测试方法。
边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界。
边界值测试方案分两种方案:五点法: min、min+、nom、max-和max七点法: min-、min、min+、nom、max-和max、max+ 选择测试用例的原则
(1)如果输入条件规定了值的范围,则应取刚达到这个范围的边界值以及刚刚超过这个范围边界的值作为测试输入数据。
(2)如果输入条件规定了值的个数,则用最大个数、最小个数和比最大个数多1个、比最小个数少1个的数作为测试数据。
(3)根据程序规格说明的每个输出条件,使用原则(1)。
(4)根据程序规格说明的每个输出条件,使用原则(2)。
(5)如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合中的第一个和 最后一个元素作为测试用例。
(6)如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例。
(7)分析程序规格说明,找出其它可能的边界条件。
判定表,叫决策表,分析和表达多逻辑条件下执行不同操作的工具。
条件桩:出问题的所有条件;动作桩:可能采取的操作 条件项:列出条件桩的取值;动作项:列出条件项各种取值下应该采取的动作;规则:在判定表中贯穿条件项和动作项的一列就是一条规则;
判定表建立步骤①列出所有的条件桩和动作桩;②确定规则的个数;③填入条件项;④填入动作项,得到初始决策表;⑤简化,合并相似规则(相同动作)。
因果图法:是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。因果图基本符号(ppt34)
程序插桩技术:软件动态测试中,程序插桩是一种基本的测试手段;借助于往被测程序中插入操作来实现测试目的方法,最简单的插桩:在程序中插入打印语句printf(“…”)语句
基本路径测试
通过分析程序控制流图的环路的复杂性,导出基本路径集合,从而设计测试用例,保证这些路径至少通过一次。独立路径:至少沿一条新的边移动的路径
单元测试:又称模块测试,是针对软件设计的最小单位——程序模块,进行正确性检验的测试工作,是代码级的测试。基本单元本身不是一个独立的程序,自己不能运行,要靠其它部分来调用和驱动。
驱动模块:被测基本单元的主程序,它接收测试数据,并把数据传送给被测单元,最后输出实测结果。
桩模块──存根模块,用来代替被测基本单元调用的其他基本单元。
单元测试的内容:主要对模块的五个基本特性进行评价(模块接口 局部数据结构 边界条件 重要的执行路径 错误处理)单元测试策略: 自顶向下的单元测试 自底向上的单元测试 孤立单元测试
集成测试:叫组装测试或联合测试,集成测试遵循特定的策略和步骤将已经通过单元测试的各个软件单元(或模块)按照设计要求逐步集成为系统或子系统,并进行测试,以期望通过测试发现各软件单元接口之间存在的问题,验证程序和概要设计说明的一致性
集成测试对象:理论上凡是两个单元(如函数单元)的组合测试都可以叫做集成测试。实际操作中,通常集成测试的对象为模块级的集成和子系统间的集成,其中子系统集成测试称为组件测试。
集成测试内容: 集成功能测试 接口测试 全局数据结构测试 资源测试 任务优先级冲突测试 性能和稳定性测试
集成测试方法: 基于功能分解的集成 非渐增式集成 渐增式集成;基于调用图的集成有两种:成对集成 相邻集成 其他集成 客户/服务器集成: 分层集成 高频集成增量式集成测试两种方法的比较
自顶向下增量式测试的主要优点在于它可以自然地做到逐步求精,一开始便能让测试者看到系统的框架。它的主要缺点是需要提供被调用模拟子模块,被调用模拟子模块可能不能反映真实情况,因此测试有可能不充分。
自底向上测试的优点在于,由于驱动模块模拟了所有调用参数,即使数据流并未构成有向的非环状图,生成测试数据也没有困难。它的缺点在于,直到最后一个模块被加入进去之后才能看到整个程序(系统)的框架。
系统测试:是将通过确认测试的软件,作为整个基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其它系统元素结合在一起,在实际运行环境下,为了发现缺陷并度量产品质量,按照系统的功能和性能需求进行的一系列组装测试和确认测试。
系统测试的依据: 开发人员提供的“需求规格说明书”,凡是和规格书不一致的地方都可以认为是问题。当然也不排除规格书有误的地方,这些也需要提出来要求开发人员改正,以保证资料的正确性和权威性。
系统测试类型
web系统测试:功能测试、性能测试、安全性测试、兼容性测试、易用性测试、配置测试;
通讯类系统:功能测试、可靠性测试、鉴权测试、产品许可测试、多终端测试;
单机版系统:功能测试、安装测试、容量测试、界面测试、恢复测试;
自动化测试: 通过测试工具或其他手段来部分替代手工测试,并按照测试工程师预定计划进行自动测试的活动,它是软件测试的一个重要组成部分,能够完成许多手工无法完成或者难以实现的一些测试工作。
正确、合理地实施自动化测试,能够快速、全面地对软件进行测试,从而提高软件质量,节省经费、缩短产品发布周期。自动化测试的基本原理: 录制 脚本编辑 回放 运行脚本 分析结果
自动化测试的优点:
1、对程序的回归测试更方便。
2、可以运行更多更繁琐的测试
3、可以执行一些手工测试困难或不可能进行的测试。
4、更好地利用资源,将繁琐的任务自动化,将测试技术人员解脱出来投入更多精力设计更好的测试用例。
5、测试具有一致性和可重复性
6、测试具有复用性,自动化测试的脚本技术可在不同的测试过程重用。
7、增加软件信任度。自动化测试的缺点:
1、不能取代手工测试;
2、手工测试比自动测试发现的缺陷更多;
3、对测试质量的依赖性极大;
4、测试自动化不能提高有效性;
5、测试自动化可能会制约软件开发。由于自动测试比手动测试更脆弱,所以维护会受到限制,从而制约软件的开发。
6、工具本身并无想像力。
测试工具分类: 白盒测试工具: JUnit 黑盒测试工具:QuickTest 性能测试工具: LoadRunner 用于测试管理: TestDirector
一、单项选择题:共20小题,每小题2 分,满分40分。1.软件测试按照测试层次可以分为( C ) A.黑盒测试、白盒测试//测试方式 B.功能性测试和结构性测试//测试目的 C.单元测试、集成测......
1.软件测试:是由“验证(verrificatione)”和“有效性确认(validation)”活动构成的整体: “验证”是检验软件是否已正确地实现了产品规格书所定义的系统功能和特性。验证过程提供......
育 > 工学 下载文档 收藏软件测试实习报告毕业实习报告软件测试实习报告 摘要 毕业前夕的实习是为了提高自己的对社会的认知能力,同时理论联系实际, 毕业前夕的实习是为了提高......
01.为什么要在一个团队中开展软件测试工作?02.您是否了解以往所工作的企业的软件测试过程?如果了解,请试述在这个过程中都有哪些工作要做?分别由哪些不同的角色来完成这些工作?03......
1.单元测试、集成测试和系统测试的重点是什么?单元测试的重点是系统的模块,包括子程序的正确性验证等。集成测试的重点是模块间的衔接以及参数的传递等。系统测试的重点是整个......