软件测试课件-黑盒、灰盒测试.pptx

上传人(卖家):晟晟文业 文档编号:4930666 上传时间:2023-01-26 格式:PPTX 页数:36 大小:324.41KB
下载 相关 举报
软件测试课件-黑盒、灰盒测试.pptx_第1页
第1页 / 共36页
软件测试课件-黑盒、灰盒测试.pptx_第2页
第2页 / 共36页
软件测试课件-黑盒、灰盒测试.pptx_第3页
第3页 / 共36页
软件测试课件-黑盒、灰盒测试.pptx_第4页
第4页 / 共36页
软件测试课件-黑盒、灰盒测试.pptx_第5页
第5页 / 共36页
点击查看更多>>
资源描述

1、黑盒测试惠普国际软件人才基地教材2.3 因果图定义 是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,该方法充分考虑了输入情况的各种组合及输入条件之间的相互制约关系。适用范围适合检查程序输入条件的各种组合情况产生背景等价类法、边界值法分析着重考虑输入条件,未考虑输入条件之间的关系惠普国际软件人才基地教材2.3 因果图用因果图生成测试用例的基本步骤1.分析软件规格说明描述:原因、结果、标识符2.分析软件规格说明描述中的语义:找出逻辑关系3.由于语法或环境限制,有些原因与原因之间,原因与结果之间的组合情况不可能出现,添加必要的约束条件4.把因果图转换成判定表5.把判定表的每一列拿出来

2、作为依据,设计测试用例惠普国际软件人才基地教材因果图标识原因和结果之间的关系有:恒等:若C1是1,则E1也是1;否则E1为0。非:若C1是1,则E1是0;否则E1是1。或:若c1或c2是1,则E1是1;否则E1为0,或”可有任意个输入。与:若c1和c2都是1,则E1为1;否则E1为0,与”也可有任意个输入。C1C1C22.3 因果图惠普国际软件人才基地教材因果图约束约束条件符号A.输入条件的约束有以下4类:E约束(互斥/异):a和b中至多有一个可能为1,即a和b不能同时为1。I约束(或):a、b和c中至少有一个必须是1,即 a、b 和c不能同时为0。O约束(唯一);a和b必须有一个,且仅有1个

3、为1。R约束(要求):a是1时,b必须是1,即不可能a是1时b是0。B.输出条件约束类型输出条件的约束只有M约束(屏蔽/强制):若结果a是1,则结果b强制为0。2.3 因果图惠普国际软件人才基地教材例子某软件规格说明书包含这样的要求:第一列字符必须是A或B,第二列字符必须是一个数字,在此情况下进行文件的修改,但如果第一列字符不正确,则给出信息L;如果第二列字符不是数字,则给出信息M。2.3 因果图惠普国际软件人才基地教材找出原因和结果:原因:C1第一列字符是A C2第一列字符是B C3第二列字符是一数字 结果:E1给出信息L E2修改文件 E3给出信息M2.3 因果图惠普国际软件人才基地教材生

4、成因果图2.3 因果图转换为判定表12345678条件(原因)C111110000C211001100C310101010T1111100动作(结果)E1000011E2101000E3010101测试用例A3AMB5BNC2DYA8A?B4B!X6P;2.3 因果图惠普国际软件人才基地教材因果图练习例如,有一个处理单价为5角钱的饮料的自动售货机软件测试用例的设计。其规格说明如下:1.若投入5角钱或1元钱的硬币,押下橙汁或啤酒的按钮,则相应的饮料就送出来。2.若售货机没有零钱找,则一个显示零钱找完的红灯亮;投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来。3.若有零钱找,则显示零钱找

5、完的红灯灭,在送出饮料的同时退还5角硬币。2.3 因果图惠普国际软件人才基地教材因果图练习1.分析规格说明,列出原因和结果原因:1.售货机有零钱找;2.投入1元硬币;3.投入5角硬币;4.押下橙汁按钮;5.押下啤酒按钮结果:21.售货机零钱找完灯亮;22.退还1元硬币;23.退还5角硬币;24.送出橙汁饮料;25.送出啤酒饮料2.3 因果图惠普国际软件人才基地教材2.分析这一段说明,列出原因和结果建立中间结点,表示处理中间状态11.投入1元硬币且押下饮料按钮;12.押下橙汁或啤酒的按钮13.应当找5角零钱并且售货机有零钱找;14.钱已付清3.画出因果图 所有原因结点列在左边 所有结果结点列在右

6、边4.上文结果中的22与 23,24 与 25 不能同时发生 分别加上约束条件E5.因果图转换成判定表2.3 因果图因果图练习惠普国际软件人才基地教材2.3 因果图因果图练习惠普国际软件人才基地教材2.3 因果图因果图练习惠普国际软件人才基地教材小结 因果图方法是一个非常有效的黑盒测试方法 它能够生成没有重复性的且发现错误能力强的测试用例 而且对输入、输出同时进行了分析 从因果图生成的测试用例包括了所有输入数据的取“真”与取“假”的情况 构成的测试用例数目达到最少 测试用例数目随输入数据数目的增加而线性地增加 如果哪个开发项目在设计阶段就采用了判定表,也就不必再画因果图 可以直接利用判定表设计

7、测试用例了2.3 因果图惠普国际软件人才基地教材2.4 随机测试随机测试指测试输入数据是所有可能输入值中随机选取的,是一种基本的黑盒测试方法。随机选取用随机模拟的方法,包括用伪随机数发生器、硬件随机模拟器产生输入数据。这种方法能够获得大量的测试数据,测试人员只需规定输入变量的取值区间、在需要的时候提供必要的变换机制,使产生的随机数服从预期的概率分布。不能事先将测试的输入数据存入文档,在排错时无法重现测试中错误发生的过程,难以进行回归测试 补救的办法是将随机产生的测试数据记录备用惠普国际软件人才基地教材2.5 猜错法猜错法是基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性地设计测试用

8、例的方法。猜错法的基本思想:列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据它们选择测试用例。经过大量的经验总结,程序中容易出错的情况有:1)输入数据为零或输出数据为零往往容易发生错误;2)如果输入或输出的数目允许变化,则输入或输出的数目为1或0的情况是 容易出错的情况等。3)还要仔细分析程序的规格说明书,注意找出其中遗漏或省略的部分,以便 设计出相应的测试方案,检测程序员对这些部分的处理是否正确。惠普国际软件人才基地教材2.6 探索性测试探索性测试是一种测试思维技术。它没有很多实际的测试方法、技术和工具,但是却是所有测试人员都应该掌握的一种测试思维方式。定义:同时设计测试和执行测试

9、。基本过程:识别软件系统的用途;识别软件系统提供的功能;识别软件系统潜在的不稳定的区域;在探索软件系统的过程中记录关于软件的信息和问题。四个类型 自由探索式测试 基于场景的探索式测试 基于策略的探索式测试 基于反馈的探索式测试惠普国际软件人才基地教材2.6探索性测试探索性测试过程图3 灰盒测试惠普国际软件人才基地教材3.1“灰盒”测试概念“灰盒”测试与白盒测试的区别“白盒”测试在测试过程中测试者可以看到被测的源程序,通过分析程序的内部结构,根据其内部结构设计测试用例 理想的“白盒”测试应该使选取的测试用例覆盖所有的路径 这是不可能的“白盒”测试它不关注测试程序的外部功能 灰盒测试无需关心模块内

10、部的实现细节惠普国际软件人才基地教材3.1“灰盒”测试概念 灰盒测试与黑盒测试的区别“黑盒”测试是在测试者完全不考虑程序内部结构和内部特征的情况下,根据需求规格说明书设计测试用例和推断的测试结果的正确性“黑盒”测试只考虑了程序的输入,以及在该情况下的输出,并没有考虑程序的内部结构。灰盒测试需关心模块与模块之间的交互。惠普国际软件人才基地教材3.1“灰盒”测试概念“灰盒”测试是一种综合测试法,它将“黑盒”测试、“白盒”测试、回归测试结合在一起,构成一种无缝测试技术。灰盒测试一种软件全生命周期测试法,该方法通常是深入到用Ada/C/Fortran或汇编语言开发的嵌入式应用软件代码中进行功能的测试,

11、或者与Web服务一起使用。惠普国际软件人才基地教材8.3.1“灰盒”测试概念“灰盒”测试思想 基于程序运行时的外部表现同时又结合程序内部逻辑结构来设计用例,执行程序并采集程序路径执行信息和外部用户接口结果的测试技术 其目的是验证软件满足外部指标以及软件的所有通道或路径都进行了检验 通过该程序的所有路径都进行了检验和验证后,就得到了全面验证惠普国际软件人才基地教材3.1“灰盒”测试概念 以程序的主要功能和主要性能为测试依据 根据程序图、功能说明书以及测试者的实践经验来设计 在现在的测试工程中,最常见的“灰盒”测试是集成测试 重点关注软件系统的各个模块之间的相互关联,即模块之间的互相调用、数据传递

12、、同步/互斥、等等惠普国际软件人才基地教材3.1“灰盒”测试概念灰盒测试的特性根据需求规格说明文档来进行测试用例的设计,但它要深入到系统内部的特殊点来进行功能测试和结构测试“灰盒”测试通常是在“白盒”测试之后,大规模集成测试之前进行“灰盒”测试需要了解代码工程的实现“灰盒”测试是通过类似“白盒”测试的方法进行的“灰盒”测试是由测试人员进行测试的惠普国际软件人才基地教材3.1“灰盒”测试概念1、能够进行基于需求的覆盖测试和基于程序路径覆盖的测试;2、测试结果可以对应到程序内部路径,便于bug的定位、分析和解决;3、能够保证设计的“黑盒”测试用例的完整性,防止遗漏软件的一些不常用的功能或功能组合;

13、4、能够需求或设计不详细或不完整对测试造成的影响。“灰盒”测试的优点惠普国际软件人才基地教材投入的时间比“黑盒”测试大概多20-40%的时间对测试人员的要求比“黑盒”测试高要求测试人员清楚系统内部由哪些模块构成,模块之间如何协作不如白盒测试深入灰盒测试的不足不适用于简单的系统8.3.1“灰盒”测试概念惠普国际软件人才基地教材“灰盒”测试的准备(1)在测试中,部署产品之外,还要安装源代码。从源代码编译生成的目录中运行软件;(2)需要代码覆盖率工具的配置;部署可以针对本软件开发语言的代码覆盖率工具;(3)测试人员要具备阅读代码的能力,其对开发语言的熟悉程度和程序设计经验多少决定了采用“灰盒”测试能

14、够取得多大的好处,所以配置这方面的测试人员或进行必要的培训是必要的。3.2“灰盒”测试步骤与应用举例惠普国际软件人才基地教材8.3.2“灰盒”测试步骤与应用举例“灰盒”测试的步骤 1、确定程序的所有输入和输出;2、确定程序所有状态;3、确定程序主路径;4、确定程序的功能;5、产生试验子功能X的输入,这里X为许多子功能之一;6、制定验证子功能的X的输出;7、执行测试用例X的软件;8、检验测试用例X结果的正确性;9、对其余子功能,重复(7)和(8);10、重复(4)(8),然后再进行(9),进行回归测试。惠普国际软件人才基地教材下面是根据一个实例来介绍一种传统的“白盒”测试与“黑盒”测试相结合的“

15、灰盒”测试方法的应用。(1)阅读需求SDRD26537(SoftwareDesignRequirementDocument)Requirement:YesDelivery:AESSMagneticHeadingshallbeserinvalidifvalueoutsiderangeof180inclusiveand180exclusive./TCASTPA-100X/Tests 需求要求飞机在巡航过程中它的有效磁场角度范围为180,180。8.3.2“灰盒”测试步骤与应用举例惠普国际软件人才基地教材(2)分析需求 这个例子很简单,根据分析,测试人员优先选择“黑盒”测试方法的边界值分析方法,并确

16、定取值范围为-180,180。设计一个健壮最坏情况边界值分析测试用例如下:180.1,180.0,179.9,1.0,0.0,1.0,180.0,179.9。3.2“灰盒”测试步骤与应用举例惠普国际软件人才基地教材(3)根据分析写出测试用例脚本 详细的测试用例脚本由于篇幅太长,故不在这里一一写出。然后将测试用例脚本在测试环境里运行出结果。但是在后面的测试工作中出现了意外,虽然测试用例的结果获得了通过,但是在做代码的“白盒”覆盖率时,未达到规定的覆盖率要求。为什么这么简单的一个单元测试失败了呢?在重新分析了需求和测试脚本以后,我们排除了这两方面带来的问题,原因很可能出在根据需求设计的脚本和源代码

17、的实现有出入。8.3.2“灰盒”测试步骤与应用举例惠普国际软件人才基地教材(4)分析相应的源代码 经过对源代码的仔细分析,果然发现了问题所在。由于“黑盒”测试的特征以及DO-178B的规范,测试人员是完全根据需求文档来设计的测试用例。而需求文档在设计的时候设置的磁角度精确值统一为0.1,但是在实际软件开发过程中,因为可靠性的要求,精确度提升到了0.001。需求文档却未相应更新,导致最终的覆盖率失败。在这里,不能取179.9,而必须取179.998,才能完全覆盖到语句,这就是“黑盒”测试与“白盒”测试相结合的产物。8.3.2“灰盒”测试步骤与应用举例惠普国际软件人才基地教材1.什么是“灰盒”测试?我们如何开展“灰盒”测试?2.什么是因果图分析法?我们如何用因果图生成测试用例?课后作业Q&A

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

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(软件测试课件-黑盒、灰盒测试.pptx)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|