《软件测试基础ppt课件讲解学习.ppt》由会员分享,可在线阅读,更多相关《软件测试基础ppt课件讲解学习.ppt(42页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、软件测试基础ppt课件2019 iSoftStone Information Service Corporation.All rights reserved.2第一章 软件测试基本概念 软件测试的定义 软件测试的目的和原则 软件测试的对象 软件测试的输入与输出 软件测试与软件开发的关系2019 iSoftStone Information Service Corporation.All rights reserved.31.1 软件测试的定义软件测试的定义软件测试是在软件投入正式运行前对需求分析、设计和编码的结果进行复查的活动;软件测试是根据开发各阶段的需求、设计文档和代码精心设计一批用例,利
2、用这些测试用例去运行程序,以及发现程序错误的过程。2019 iSoftStone Information Service Corporation.All rights reserved.41.2 软件测试的目的和原则软件测试的目的和原则目的:发现软件开发各阶段的问题目的:发现软件开发各阶段的问题尽早地、不断地进行软件测试;明确测试输入预置条件和与之对应的预期输出结果;避免测试自己编写的程序;在测试设计时应充分考虑异常的输入情况;充分考虑程序测试中的群集现象,80的错误集中在20的程序模块;排除测试的随意性;对测试结果做全面检查;妥善保存测试计划,测试用例,出错统计和最终分析结果;所有的测试应该
3、追溯到用户需求;测试应该从小规模开始,逐步转向大规模即渐增式build测试。2019 iSoftStone Information Service Corporation.All rights reserved.5 1.3 软件测试的对象软件测试的对象 软件测试不仅仅局限于软件程序的测试,测试活动贯穿于软件开发过程的整个周期中。因此,需求分析需求分析、概要设计概要设计、详细设详细设计计以及编码编码各阶段所得到的交付件交付件,包括设计文档设计文档,源代码,源代码,应用程序应用程序乃至随软件版本发布的资料资料,都是软件测试的对象。softwaresoftwaredocumentdocumentco
4、decodeuser manualuser manual2019 iSoftStone Information Service Corporation.All rights reserved.61.4 软件测试的输入与输出软件测试的输入与输出 测试结果分析排错可靠性分析度量分析软件配置测试配置测试工具测试结果预期结果错误改正的软件预测的可靠性需改进措施软件配置:软件需求规格说明书软件设计说明书源代码测试配置:测试计划测试用例测试环境测试辅助程序为提高软件测试效率,可使用测试工具支持测试工作,其作用就是为测试的实施提供服务,以减少人们完成测试任务中的手工劳动。例如:用于测试设计的测试构架工具和测
5、试用例设计工具;用于测试分析的测试对象分析工具、测试代码分析工具、缺陷分析工具、测试评估分析工具;用于测试实现的测试数据生成工具、测试脚本生成工具;用于测试执行的系统功能测试工具、系统性能测试工具、协议测试工具;用于测试管理的测试任务管理工具、测试用例管理工具;输出:问题报告单测试总结/报告测试度量数据新增用例2019 iSoftStone Information Service Corporation.All rights reserved.7第二章 黑盒测试 黑盒测试定义 黑盒测试分类 常见的黑盒测试方法 等价类方法演练 黑盒测试方法的实际应用 黑盒测试的经验之谈2019 iSoftSto
6、ne Information Service Corporation.All rights reserved.82.1 黑盒测试定义n黑盒测试相对于白盒测试而言,并不关心被测对象的内部实现,而是针对被测对象提供的外部功能与规格来设计测试用例进行的测试输入输出2019 iSoftStone Information Service Corporation.All rights reserved.92.2 黑盒测试分类n功能测试l功能覆盖测试l功能组合测试l异常测试n性能测试l指标测试l稳定性测试n体验测试l面向最终用户的体验l面向运维用户的体验2019 iSoftStone Information
7、 Service Corporation.All rights reserved.102.3 常见的黑盒测试方法 等价类划分 边界值分析 错误推测 因果图 判定表 正交分析 功能图 性能测试方法 体验测试方法2019 iSoftStone Information Service Corporation.All rights reserved.112.3.1 等价类划分定义:定义:特点特点:将全部输入数据合理划分为若干等价类,在每一个等价类中选取一个数据作为测试的输入条件,这样所取得的测试效果与选择等价类内所有数据作为测试的输入所取的测试效果是一样的典型、常用有效提高测试效率2019 iSoft
8、Stone Information Service Corporation.All rights reserved.122.3.1 等价类划分(续)n等价类划分方法应用步骤划分等价类边界值分析(可选步骤)多个输入间关系分析(可选步骤)生成测试用例2019 iSoftStone Information Service Corporation.All rights reserved.132.3.2 边界值分析定义:特点:经验告诉我们,大量的错误是发生在输入或输出范围的边界上,边界值分析就是在划分的等价类区域的边界及其附近进行测试数据的选取典型、常用测试方法经常和等价类法配合使用2019 iSoft
9、Stone Information Service Corporation.All rights reserved.142.3.2 边界值分析(续)n边界值分析方法应用步骤确定输入的范围确定范围的边界值多个输入关系分析(可选步骤)生成测试用例2019 iSoftStone Information Service Corporation.All rights reserved.152.3.3 等价类法演练案例n某网管用户登录界面要求输入用户ID和密码才能登录,对该用户登录功能进行测试。用户ID、密码要求不能为空。用户ID为4位数字,不能以“0”开头;用户密码为6位数字,不能以“0”开头。n演练要
10、求:l划分等价类l生成测试用例2019 iSoftStone Information Service Corporation.All rights reserved.162.3.4 等价类和边界值结合案例n边界值分析方法通常和等价类划分方法一起配合使用,这种方法的优点是能够在等价类划分的基础上使设计出的测试用例更加具有针对性,更加容易发现问题。该方法也是一种常用的黑盒测试方法。2019 iSoftStone Information Service Corporation.All rights reserved.172.3.5 错误推测法定义:错误推测法是基于经验和直觉推测程序中所有可能存在的各
11、种错误,从而有针对性的进行测试的方法。特点:分析过程简单、可操作性强测试用例的设计更加具有针对性、有效性2019 iSoftStone Information Service Corporation.All rights reserved.182.3.5 错误推测法(续)n错误推测法大致步骤确定被测对象范围在测试经验库中查找相关内容根据测试经验库中查找出的相关内容设计测试用例测试经验库包括网上问题,历史版本易发生问题,开发人员易犯错误点,ODC分类标准等用户接口探究允许的字符集合和数据类型,输入缓冲区溢出,找出可能会相互作用的输入及其组合,多次重复同样的输入和输入序列,赋给无效文件名,改变文件
12、访问许可,更改或破坏文件内容 系统接口 模拟能执行所有错误处理代码并经历所有异常的故障,强制数据结构存储过多或过少的值,发现不充分地共享数据或交互的功能部件,考察内部数据约束(大小、维数、类型、形状、状态、位置)或系统的指标相关限制,按容量填满文件系统,强制介质忙或不可用,毁坏介质,内存耗尽处理,网络故障处理 硬件、模块异常资源限制极限模拟(CPU、内存等)、超负荷运行,强制系统某一个软件模块(进程级别)失效或不能完全正常工作,根据产品内部模块间的偶合关系,强制子系统(某几个模块的组合)失效来观察系统的运行状况,对模块间(特别是互为备份的模块间)的通讯进行强制异常或失效,负荷分担方式下,验证系
13、统对负荷异常增加时运行的情况,系统/模块失效或掉电后系统恢复(双总线结构系统总线失效、双平面结构系统的单平面内部件失效)信息冗余类的异常测试数据库的事务完整性异常,数据库锁的异常处理,数据库的备份与恢复异常(各种备份方式及条件),存储物理设备异常恢复(心跳线异常、网络中断、网络风暴、掉电),协议消息IE(信元)异常,协议消息时序异常 时间冗余类的异常握手中断(重发和握手),定时器异常2019 iSoftStone Information Service Corporation.All rights reserved.192.3.6 因果图分析方法定义:特点:通过分析输入输出之间的因果组合,高效
14、的从众多组合中选出有效用例等价类和边界值法着重考虑了对于一个输入条件的分析,但是没有考虑到多个输入条件之间的组合与联系。因果图方法运用图的方法对多个输入之间的组合以及输入、输出之间的因果关系进行了分析。2019 iSoftStone Information Service Corporation.All rights reserved.202.3.6 因果图分析方法(续)n因果图方法应用步骤确定被测对象的输入与输出分析输入与输出之间的因果关系根据因果关系分析画出因果图将因果图转换为判定表根据判定表设计测试用例优点:综合考虑了输入、输出条件的组合,使测试设计更加全面。缺点:方法过程比较复杂,方法
15、本身比较难以掌握;输入与输出之间的因果关系比较难以从规格描述中得到,需要一个分析过程;如果被测对象本身比较复杂,那么分析过程以及最后得到的因果图可能会非常复杂,得到的测试用例数量很庞大,需要耗费比较多的工作量。基于以上原因,这种方法实际得到的应用并不多。2019 iSoftStone Information Service Corporation.All rights reserved.212.3.7 判定表方法定义:采用表格的形式,列出所有条件和所有结果的组合,做到无遗漏的覆盖。特点:判定表适合条件项各自独立,互不影响的情况。判定表使用的技巧在于,把条件项划分清晰,对条件进行合理的组合,使得
16、到的规则数最小。2019 iSoftStone Information Service Corporation.All rights reserved.22基本测试流程n掌握软件测试的基本概念n掌握黑盒测试概念和方法n掌握白盒测试概念和方法2019 iSoftStone Information Service Corporation.All rights reserved.232.3.7 2.3.7 判定表方法(续)判定表方法(续)条件桩(Condition Stub):列出了问题的所有条件,通常认为列出的条件的次序无关紧要。动作桩(Action Stub):列出了问题规定可能采取的操作,这些
17、操作的排列顺序没有约束。条件项(Condition Entry):列出针对它左列条件的取值,在所有可能情况下的真假值。动作项(Action Entry):列出在条件项的各种取值情况下应该采取的动作。规则:任何一个条件组合的特定取值及其相应要执行的操作。在判定表中贯穿条件项和动作项的一列就是一条规则。显然,判定表中列出多少组条件取值,也就有多少条规则,即条件项和动作项有多少列。2019 iSoftStone Information Service Corporation.All rights reserved.242.3.8 判定表方法(续)n判定表分析步骤确定规则个数,假如有n个条件,每个条件
18、有两个取值,就有2的n次方个规则列出所有的条件桩和动作桩填入条件项填入动作项,得到初始判定表简化,合并相似规则和动作2019 iSoftStone Information Service Corporation.All rights reserved.252.3.9 因果图和判定表结合案例2019 iSoftStone Information Service Corporation.All rights reserved.262.3.10 正交试验设计方法定义:正交试验设计法,是从大量的试验点中选取适量的有代表性的点,应用依据伽罗华理论推导出的正交表,合理地安排实验的一种科学的实验设计方法。利
19、用这种方法,可使所有的因子和水平在试验中均匀地分配与搭配,均匀地有规律地变化。特点:采用正交实验设计方法进行测试用例的设计能够有效地、合理地减少测试的工时与费用。兼顾测试成本与测试充分性的均衡,提高测试效率。2019 iSoftStone Information Service Corporation.All rights reserved.272.3.10 2.3.10 正交试验设计方法(续)正交试验设计方法(续)n正交试验设计方法应用步骤 提取功能说明,构造因子-状态表影响实验指标的条件称为因子,而影响实验因子的条件叫因子的状态;加权筛选,生成因素分析表,对因子与状态的选择可按其重要程度分
20、别加权。可根据各个因子及状态的作用大小、出现频率的大小以及测试的需要,确定权值的大小;利用正交表构造测试数据集正交表的推导依据Galois 理论2019 iSoftStone Information Service Corporation.All rights reserved.282.3.11 功能图方法定义:功能图方法就是根据对被测功能的状态迁移图以 及逻辑功能图的覆盖进行测试用例设计的方法;特点:功能图方法借鉴了白盒测试方法的思想功能图方法是一种常用的且实用的黑盒测试方法2019 iSoftStone Information Service Corporation.All rights
21、reserved.292.3.11 功能图方法(续)n功能图方法应用步骤:画出状态迁移图在每个状态中生成局部测试用例利用规则生成测试路径测试用例合成2019 iSoftStone Information Service Corporation.All rights reserved.302.3.13 体验测试方法n体验测试方法体验测试的目的是通过用户对产品的使用来找出产品中的可用性问题,而不是寻找产品中的BUG,因此其测试方法的着眼点和通常的测试是不同的,一般来说,场景设计和角色扮演是较多使用的方法。场景,是为了让体验更加接近于现实生活而由体验组织者预先设定的若干典型情景,这些情景中会设计不同
22、层次的用户在不同条件下使用产品的情况。体验者可以根据自己的情况选择不同的角色在不同的情景中进行体验。场景设计的最高境界是写出一部剧本,但由于我们的体验人员并非专业演员,也无法代表社会各阶层的人群,因此在现阶段我们更加注重的是场景中的功能的排列组合对产品可用性带来的影响。2019 iSoftStone Information Service Corporation.All rights reserved.312.3.13 体验测试方法(续)n场景举例下面场景选自彩铃一号通体验活动:市场部的老王早上出门比较匆忙,把手机落家里了,而他的一号通设置的顺序振铃的第一个就是手机,为了不被家人误接,同时不使
23、客户觉得自己不礼貌,王先生需要将自己办公室的电话设为顺序振铃的第一个,于是他使用街头的公用电话进行操作,操作的过程中他为了省钱又使用了一号通的去话功能。2019 iSoftStone Information Service Corporation.All rights reserved.322.4 黑盒测试方法的实际应用等价类、边界值、错误推测这几种方法是最常使用的方法黑盒测试方法主要应用在产品集成测试、系统测试阶段,也可应用在单元测试阶段2019 iSoftStone Information Service Corporation.All rights reserved.332.4 2.4
24、黑盒测试方法实际应用(续)黑盒测试方法实际应用(续)黑盒测试方法在实际应用往往不是孤立的,大部分情况下这些方法是要结合起来使用不同的黑盒测试方法具有不同的优点,注意根据实际情况选择不同的黑盒测试方法进行测试2019 iSoftStone Information Service Corporation.All rights reserved.342.5 2.5 黑盒测试的经验之谈(一)黑盒测试的经验之谈(一)n充分熟悉被测对象了解特性的由来了解特性的应用场景了解特性的相互关联了解实际的组网方式了解接口的消息交互了解接口的协议内容了解内部的状态变迁.2019 iSoftStone Informat
25、ion Service Corporation.All rights reserved.352.5 2.5 黑盒测试的经验之谈(二)黑盒测试的经验之谈(二)n对测试进行正确的分类不要小看测试分类,每次测试前先进行一下测试分类有助于避免遗漏。功能测试,一致性测试,安全性测试,性能测试,压力测试,配置测试,安装测试,恢复测试,易用性测试,备份测试,大容量测试,流控测试,兼容测试,互操作测试,Qos测试,长时间测试 2019 iSoftStone Information Service Corporation.All rights reserved.362.5 2.5 黑盒测试的经验之谈(三)黑盒测
26、试的经验之谈(三)测试点的确定测试点是在对测试对象进行分析的基础上得出测试重点,可以将其看成测试用例的标题。测试点能够清晰的反映用例设计者的思路,便于进行评审。测试点能够清晰的反映对版本特性的覆盖,便于发现遗漏。2019 iSoftStone Information Service Corporation.All rights reserved.37目录第一章 软件测试基础 第二章 黑盒测试 第三章 白盒测试 2019 iSoftStone Information Service Corporation.All rights reserved.38第三章 白盒测试 白盒测试的定义 程序结构分析
27、 逻辑覆盖 其他白盒测试方法简单介绍 白盒测试的实际应用2019 iSoftStone Information Service Corporation.All rights reserved.393.1 白盒测试的定义 白盒测试是根据被测程序的内部结构设计测试用例的一种测试方法。输入输出if()else被测对象2019 iSoftStone Information Service Corporation.All rights reserved.403.2 白盒测试的实际应用l应用于单元测试l公司要求达到语句覆盖l对于比较核心的模块做到判定条件覆盖l利用覆盖准则来设计用例l程序插装使用最多2019 iSoftStone Information Service Corporation.All rights reserved.41总结l软件测试基本概念l黑盒测试及其方法l白盒测试及其方法此课件下载可自行编辑修改,仅供参考!此课件下载可自行编辑修改,仅供参考!感谢您的支持,我们努力做得更好!谢谢感谢您的支持,我们努力做得更好!谢谢