第三章软件工程基础(一)白盒测试(看得见程序内部,因此是测试内部结构和流程(1)根据软件产品的内部工作过程,检查内部成分,以确认每种内部操作符合设计规格要求。(2)基本原则:每一个独立路径至少执行一次所有判断的每一个分支至少执行一次保证所测模块每一个循序都在边界条件和一般条件下各执行一次验证所有内部数据结构的有效性
第三章 软件工程基础 (一)白盒测试(看得见程序内部,因此是测试内部结构和流程) (1)根据软件产品的内部工作过程,检查内部成分,以确认每种内部操作符合设计规 格要求。 (2)基本原则:
第三章软件工程基础基本路径测试(3)主要方法有逻辑覆盖系列以程序内部的逻辑结构为基础的测试用例设计技术语句覆盖路径覆盖逻辑覆盖测试判定覆盖条件爱盖判断-条件覆盖
第三章 软件工程基础 (3)主要方法有逻辑覆盖、基本路径测试
第三章软件工程基础(3)逻辑覆盖之“语句覆盖选择足够测试用例,使得程序中的每一个语句至少执行一次begin用例输入(i,)输出(5,小×)输入(5. 5)测试用例1(5. 5. 5)(5, 10)(5,10,10)测试用例2i2=语句覆盖是逻辑覆盖中基本的覆盖输出j.xend
第三章 软件工程基础 (3)逻辑覆盖之“语句覆盖” —选择足够测试用例,使得程序中的每一个语句至少执行一次 语句覆盖是逻辑覆盖中基本的覆盖
第三章软件工程基础(3)逻辑覆盖之“路径覆盖选择足够测试用例,使得程序所有可能的路径至少执行一次测试用例通过路径【(A=4,B=1,X=3),(输出略)](ace)TA>landB=(abd)【(A=1,B=l,X=1),(输出略))(abe)【(A=3,B=2,X=1),(输出略)]FX-XIAb(acd)【(A=2,B=1,X=I),(输出略)】TA>3andB=1全部四条路径:ace,abd,abe,acdX=XIAFd
第三章 软件工程基础 (3)逻辑覆盖之“路径覆盖” —选择足够测试用例,使得程序所有可能的路径至少执行一次 全部四条路径:ace,abd, abe, acd
第三章软件工程基础(3)逻辑覆盖之“判定覆盖(分支覆盖)使设计的测试用例保证程序中每个判定的分支(T或F)至少经历一次Start(路径:ab)测试用例1:a=1,b=1(路径:acd)测试用例2:a=-1,b=-1测试用例3:a=2,b=-1(路径:ace)>0&&b>0缺点:a<0&&bcoc=a+b若判断中存在多个联立条件,仅保证判断的真假值容易导致某些单个条件的c=a"bc=ma-b错误不易被发现判断"x<1 ory>5"停为样就下itestingEnd
第三章 软件工程基础 (3)逻辑覆盖之“判定覆盖”(分支覆盖) —使设计的测试用例保证程序中每个判定的分支(T或F)至少经历一次 缺点: 若判断中存在多个联立条件,仅保 证判断的真假值容易导致某些单个条件的 错误不易被发现 判断“x<1 or y>5” 测试用例1: a=1, b=1 (路径:ab) 测试用例2: a=-1, b=-1 (路径:acd) 测试用例3: a=2, b=-1 (路径:ace)