软件工程概论 教学课件 ppt 作者 陶华亭参考课件 5_51_白盒法.ppt

软件工程概论 教学课件 ppt 作者 陶华亭参考课件 5_51_白盒法.ppt

ID:51965018

大小:610.00 KB

页数:65页

时间:2020-03-26

软件工程概论 教学课件 ppt 作者 陶华亭参考课件 5_51_白盒法.ppt_第1页
软件工程概论 教学课件 ppt 作者 陶华亭参考课件 5_51_白盒法.ppt_第2页
软件工程概论 教学课件 ppt 作者 陶华亭参考课件 5_51_白盒法.ppt_第3页
软件工程概论 教学课件 ppt 作者 陶华亭参考课件 5_51_白盒法.ppt_第4页
软件工程概论 教学课件 ppt 作者 陶华亭参考课件 5_51_白盒法.ppt_第5页
资源描述:

《软件工程概论 教学课件 ppt 作者 陶华亭参考课件 5_51_白盒法.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第5章编程与测试测试(方法)技术(测试用例设计)1关于“测试用例设计”测试方案包括:①测试目的②拟定的输入数据③预期的结果测试数据和预期结果,被称为“测试用例”最困难是选择检错能力强的测试输入数据。2关于“测试用例设计”不同的测试方案,发现错误的能力有差别,为提高效率、降低测试成本,应选用高效的测试数据。所以,测试用例设计是测试的关键技术;因为不可能进行穷尽的测试,所以测试用例设计的目标是,选用少量“最有效的”测试数据,做到尽可能完备的测试。白盒法、黑盒法,是两种设计测试用例的方法35.5测试技术(方法)(测试用例设计)5.5.1白盒测试法5.5.2黑盒测试法45.5.1.1逻

2、辑覆盖5.5.1.2控制结构覆盖基本路径覆盖条件覆盖循环覆盖5.5.1白盒测试技术55.5.1.1逻辑覆盖测试无法做到穷举,所以,选择有代表性的通路,拟定高效的测试数据,以减少测试量,提高测试的有效性,是沿测试方案设计追求的目标。一系例依据模块的内部逻辑设计测试用例的策略,就构成了白盒法测试技术;逻辑覆盖是白盒法的策略之一,是指测试数据对模块内部的所有语句、分支、路径等逻辑,能测试到多少的一种说法。65.5.1.1逻辑覆盖按不同的策略设计的测试数据的检错能力差别很大,换言之,有的测试(数据)会漏掉一些模块内部逻辑而测不到,从这个角度讲,不同的测试数据,具有不同的逻辑覆盖强度。使

3、用逻辑覆盖策略设计测试用例,有6种方法,每种方法有着不同的逻辑覆盖强度,这也构成了6个逻辑覆盖的标准:75.5.1.1逻辑覆盖(1)语句覆盖法(2)判定覆盖法(3)条件覆盖法(4)判定/条件覆盖法(5)条件组合覆盖法(6)路径覆盖法强弱逻辑覆盖强度8(1)语句覆盖法为了暴露错误,应选择足够多的测试数据,使被测模块中每个语句至少执行一次。9图5.1被测试模块的流程图满足语句覆盖,程序被测路径应该是sacbed,为此只需要输入下面的测试数据:A=2,B=0,X=3(实际上X可以是任意实数)10语句覆盖似乎全面地检验了每个语句。但它只测试了逻辑表达式为“T”的情况;如果将第一个逻辑表

4、达式中的“AND”错写成“OR”,第二个逻辑表达式中将“X>1”错写成“X<1”,仍用上述数据进行测试,是不能发现错误的。因此,语句覆盖是比较弱的覆盖标准。11分析从本例可以看出,语句覆盖,只关心有没有测到判定语句,而没有强调分别考虑判定表达式取“真”“假”的两种情况,因此,语句覆盖是较弱的逻辑覆盖标准;为了更充分地测试,白盒法的逻辑覆盖策略又提出了“判定覆盖法”,要求选用的测试数据,不仅要做到语句覆盖,还要满足判定覆盖的标准。12(2)判定覆盖判定覆盖又叫分支覆盖,关注判定表达式的不同取值情况;不仅每个语句必须至少执行一次,而且每个判定的每种可能的结果都应该至少执行一次,即至

5、少取“真”“假”两个分支13图5.2被测试模块的流程图两组数据:A=3,B=0,X=1(143)A=2,B=1,X=2(126)14分析判定覆盖比语句覆盖强;但是对程序逻辑的覆盖程度仍然不高,只关注到整个判定表达式的结果,没有关注到表达式中的每个条件的不同取值;15(3)条件覆盖关注到表达式中每个条件!不仅每个语句至少执行一次,而且使判定表达式中的每个条件都取到各种可能的结果。16图5.3被测试模块的流程图该程序有四个条件:A>1,B=0A=2,X>1条件覆盖标准要求覆盖到:对表达式1的两个情况A>1,B=0A≦1,B≠0对表达式2的两个情况A=2,X>1A≠2,X≤1设计测试

6、用例如下:a=2,b=0,x=3(满足a>1,b=0,x>1,通过路径146)a=1,b=1,x=1(满足A≦1,B≠0,A≠2,X≤1,通过路径123)17分析一般地,”条件覆盖“强于“判定覆盖”,但也有例外:A=1,b=0,x=3(满足a≤1,b=0,a≠2,x>1)A=2,b=1,x=1(满足a>1,b≠0,a=2,x≤1)该测试用例,只测试到了第1表达式的“真”和第2表达式的“假”图5.4被测试模块的流程图18分析由此可见,但条件覆盖,不一定涵盖判定覆盖;白盒法又提出了将两都结合的标准“判定/条件覆盖”19(4)判定/条件覆盖既然条件覆盖不一定包含判定覆盖,判定覆盖也不

7、一定包含条件覆盖,自然会提出一种能同时满足这两种覆盖标准的逻辑覆盖,这就是判定/条件覆盖。它的含义是,选取足够多的测试数据,使得判定表达式中的每个条件都取到各种可能的值,而且每个判定表达式也都取到各种可能的结果。20测试用例:A=2,B=0,X=3A=1,B=1,X=1图5.5被测试模块的流程图21分析表面上看,判定/条件覆盖,测试了所有条件的取值,但实际上条件组合中的某些条件,会抑制其他条件。例如,在有“与”运算的判定表达式中,第一个条件取“假”值是,第二个条件永远不起作用;在有“或”运算

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

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

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