白盒测试及其用例的设计ppt课件.ppt

白盒测试及其用例的设计ppt课件.ppt

ID:58722689

大小:1.39 MB

页数:82页

时间:2020-10-04

白盒测试及其用例的设计ppt课件.ppt_第1页
白盒测试及其用例的设计ppt课件.ppt_第2页
白盒测试及其用例的设计ppt课件.ppt_第3页
白盒测试及其用例的设计ppt课件.ppt_第4页
白盒测试及其用例的设计ppt课件.ppt_第5页
资源描述:

《白盒测试及其用例的设计ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、教学目标理论环节学习理解白盒测试方法的基本概念学习理解白盒测试的覆盖理论学习掌握白盒测试的路径表达学习掌握白盒测试的基本路径测试法实践环节通过案例运用学习掌握覆盖问题的解决方法运用基本路径测试方法进行实际程序测试白盒测试也称结构测试或逻辑驱动测试,是针对被测单元内部是如何进行工作的测试。白盒法把测试对象看做是一个打开的盒子,允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。白盒法也不可能进行穷举测试,企图遍

2、历所有的路径,往往是做不到的。左图所示的一个小程序的控制流程,其中每个圆圈代表一段源程序(或语句块),图中的曲线代表执行次数不超过20的循环,循环体中共有5条通路。这样,可能执行的路径有520条,近似为1014条可能的路径。如果完成一个路径的测试需要1毫秒,那么整个测试过程需要3170年。显然,这也是不能接受的。白盒法需要了解程序的内部结构和详细的处理过程,它按照程序内部逻辑测试程序,检验程序中每条通路是否按预定要求正确工作。对于白盒测试,即使每条路径都测试了,程序仍可能有错。再如由于疏忽漏写了路径,白盒测试也发

3、现不了。所以,白盒法不能使测试达到彻底。为了用有限的测试发现更多的错误,需精心设计测试用例。黑盒法、白盒法是设计测试用例的基本策略,每一种方法对应着多种设计测试用例的技术,每种技术可达到一定的软件质量标准要求。测试用例的设计白盒技术在测试阶段穷举测试不可行,必须要从数量极大的可用测试用例中精心地挑选少量的测试数据,使得采用这些测试数据能够达到最佳的测试效果,能够高效率地把隐藏的错误揭露出来。下面介绍几种白盒测试设计测试用例的方法。白盒测试的主要方法逻辑驱动测试基本路径测试主要用于软件验证。使用程序设计的控制结构导

4、出测试用例。全部例子均为C语言编制六种逻辑覆盖一个显而易见的问题:一个完整的语句,未必是一行语句y=abs(x);if(x>=0)y=sqrt(x);if(x>=0)y=x;elsey=abs(x);if((x>=0)&&(z>=0))y=x*z;简单的赋值语句单分支语句双分支语句判断条件较复杂的单分支语句一些更复杂的语句if((x<0)or(x>100))printf("ERROR!");elseif(x>=60)printf("OK!");elseprintf("FAIL!");for(i=0;i<10;i+

5、+)s=s+a[i];判断条件较复杂的多分支语句简单的循环语句对以上语句,请思考:如何让它们都被执行?简单的赋值语句使赋值号左侧的变量得到一个值分支语句使各个分支语句中至少一个被执行循环语句使循环体被执行至少一次Q:什么叫做“语句被执行”?给出测试数据,使各语句均被执行y=abs(x);if(x>=0)y=sqrt(x);if(x>=0)y=x;elsey=abs(x);令x任取一值即可使本语句被执行令x任取一非负数值即可保证判断条件成立,语句被执行令x任取一值因为此二分支覆盖了全部的取值范围,x无论取什么值,都

6、能使其中的一个分支被执行if((x>=0)

7、

8、(z>=0))y=x*z;不管z,令x任取一非负数值不管x,令z任取一非负数值令x、z同时任取一非负数值这三种取值均能使判断条件成立令判断条件成立,语句即被执行if((x<0)or(x>100))printf("ERROR!");elseif(x>=60)printf("OK!");elseprintf("FAIL!");令判断条件A成立,分支之一被执行令判断条件A不成立,但B成立,那么分支之二被执行令判断条件AB均不成立,则分支之三被执行AB以上三种取值,均能使这个

9、分支语句得以执行for(i=0;i<10;i++)s=s+a[i];令i取零到9闭区间内的任意值,循环体就会被执行可见:越复杂、影响最终结果的变量的可能值越多的语句,只要取其任一个分支或任一种可能,整条语句就算被执行最彻底的测试,是考虑到每一种可能最粗略的测试,是仅仅考虑到其中的一种可能逻辑驱动测试是以程序内在逻辑结构为基础的测试,即测试覆盖率。共包括以下6种类型(强弱程度逐渐递增):语句覆盖判定覆盖条件覆盖判定-条件覆盖条件组合覆盖路径覆盖考虑到每一种可能,最彻底仅考虑一种可能,最粗略voidDoWork1(i

10、ntx)1{2intk=0,j=0;3if(x>3)//语句14k=x^3-1;5j=sqrt(k);//语句26printf("%d,%5.2d",k,j);7}如下的C函数:Q1:本函数中起作用的变量有哪几个?xQ2:用最简单的输入,使函数中的每个语句都得到执行:令x为4单分支语句voidDoWork(intx,inty,intz)1{2intk=0,j=0;3i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。