1 / 62
文档名称:

《软件测试说明》.ppt

格式:ppt   大小:435KB   页数:62页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

《软件测试说明》.ppt

上传人:文库姐姐 2022/6/2 文件大小:435 KB

下载得到文件列表

《软件测试说明》.ppt

文档介绍

文档介绍:软件测试的基本概念
软件测试方法
测试用例的设计
软件测试的步骤
调试
退出
第八章 软件测试
软件可靠性
测试工具
精选课件
试:要求程序中的每个分支至少测试一次;
(3)路径测试:要求程序中的每条路径至少测试一次。
白盒测试
精选课件
白盒测试也不能实现穷尽测试:
左图所示的一个小程序的控制流程,其中每个圆圈代表一段源程序(或语句块),图中的曲线代表执行次数不超过20的循环,循环体中共有5条通路。这样,可能执行的路径有520条,近似为1014条可能的路径。如果完成一个路径的测试需要1毫秒,那么整个测试过程需要3170年。显然,这也是不能接受的。
精选课件
测试用例的设计
逻辑覆盖
等价类划分
退出
边界值分析
错误推测法
精选课件
逻辑覆盖是以程序的内部逻辑结构为基础的测试用例设计技术,属于白盒测试。它要求测试人员十分清楚程序的逻辑结构,考虑的是测试用例对程序内部逻辑覆盖的程度。
根据覆盖的目标,逻辑覆盖又可以分为:
语句覆盖
判定覆盖
条件覆盖
判定/条件覆盖
条件组合覆盖
逻辑覆盖
精选课件
1、语句覆盖
语句覆盖就是设计足够的调试用例,使得程序中的每个语句至少执行一次。
精选课件
左图程序段中共有4条路径:P1(ace)、P2(abd)、P3(abe)、P4(acd)。
语句覆盖不能发现判断中的逻辑运算中的错误。第一个判断中的逻辑运算符“&&”若错写成了“||”,利用上面的输入数据则检查不出这个错误。
P1正好满足语句覆盖的条件。可以设计如下的输入数据:
A=2,B=0,x=4
精选课件
2、判定覆盖
判定覆盖就是设计足够的测试用例,使得程序中每个判定的取“真”分支和取“假”分支至少都执行一次,判定覆盖又称分支覆盖。
测试用例如果能够测试路径P1(ace)和P2(abd),就可以满足判定覆盖要求。可以设计如下两组输入数据:
A=2,B=0,x=4
A=1,B=1,x=1
也可以让测试用例测试路径P3(abe)和P4(acd)。相应的两组输入数据如下:
A=2,B=1,x=1
A=4,B=0,x=4
判定覆盖比语句覆盖强,但是仍不能保证判断条件的正确性。例如:第二个判断条件中的x>1若错写成了x<1,利用上面的输入数据就不能检查出这个错误。
精选课件
3、条件覆盖
条件覆盖就是设计足够的测试用例,使得程序判定中的每个条件能获得各种可能的结果。
条件:A>1,B=0,A=2,x>1。需要有足够的测试用例使得上述四个条件都能有满足和不满足的情况。以下这两组输入数据能满足这些要求:
A=2,B=0,x=4
A=1,B=1,x=1
这两组数据不仅满足条件覆盖的要求,而且也满足判定覆盖的要求。但并不是所有的满足条件覆盖要求的数据都满足判定覆盖的要求。下面的两组数据满足条件覆盖的要求:
A=1,B=0,x=3
A=2,B=1,x=1
但是这组数据不满足判定覆盖的要求。为了解决这个问题,可以采用下面的判定/条件覆盖。
精选课件
4、判定/条件覆盖
判定/条件覆盖就是设计足够的测试用例,使得判定中的每个条件都取到各种可能的值,而且每个判定表达式也都取到各种可能的结果。
对于上面的例子,下述两组输入数据能满足这些要求:
A=2,B=0,x=4
A=1,B=1,x=1
判定/条件覆盖仍有缺陷。从表面上看,它测试了所有条件的所有可能结果,但事实上并不是这样。因为某些条件掩盖了另一些条件。例如,在逻辑表达式中,如果“与”表达式中某一条件为“假”,则整个表达式的值为“假”,这个表达式中另外的几个条件就不起作用了。同样地,如果在“或”表达式中,某一条件为“真”,则整个表达式的值为“真”,其它条件也就不起作用了。因此,采用判定/条件覆盖时,逻辑表达式中的错误不一定能测试出来。
精选课件
5、条件组合覆盖
条件组合覆盖就是设计足够的测试用例,使得每个判定中的条件的各种可能组合都至少出现一次。
可能的条件组合:
(1)A>1,B=0
(2)A>1,B≠0
(3)A≤1,B=0
(4)A≤1,B≠0
(5)A=2,x>1
(6)A=2,x≤1
(7)A≠2,x>1
(8)A≠2,x≤1
相应的输入数据:
A=2,B=0,x=4 满足(1)和(5)
A=2,B=1,x=1 满足(2)和(6)
A=1,B=0,x=2 满足(3)和(7)
A=1,B=1,x=1 满足(4)和(8)
显然,满足条件组合覆盖的测试