软件测试 教学课件 作者 郑人杰 许静 于波 第4章白盒测试二.ppt

软件测试 教学课件 作者 郑人杰 许静 于波 第4章白盒测试二.ppt

ID:50348594

大小:499.00 KB

页数:38页

时间:2020-03-08

软件测试 教学课件 作者 郑人杰 许静 于波 第4章白盒测试二.ppt_第1页
软件测试 教学课件 作者 郑人杰 许静 于波 第4章白盒测试二.ppt_第2页
软件测试 教学课件 作者 郑人杰 许静 于波 第4章白盒测试二.ppt_第3页
软件测试 教学课件 作者 郑人杰 许静 于波 第4章白盒测试二.ppt_第4页
软件测试 教学课件 作者 郑人杰 许静 于波 第4章白盒测试二.ppt_第5页
资源描述:

《软件测试 教学课件 作者 郑人杰 许静 于波 第4章白盒测试二.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、4.3路径测试1.路径分析2.路径编码3.程序插装1.路径分析路径表达式12345abcdef弧序列表示节点序列表示acdeabeabefabefabeabefacde1-2-3-4-51-2-4-51-2-4-5-1-2-4-5-1-2-4-51-2-4-5-1-2-3-4-5路径表达式的运算乘:ab表示先沿弧a再沿弧b所经历的路段加:a+b表示两段弧是或的关系路径:e(a+b)(c+d)feacf+eadf+ebcf+ebdf12345ebacdf具有循环的控制流图abd+abcbd+abcbcd+…ab(1+cb+(cb)2+…)d1234abcd路径表达式满足规律加法交换律a+b=b

2、+a加法结合律a+(b+c)=(a+b)+c加法幂等律a+a=a乘法结合律a(bc)=(ab)c=abc分配律a(b+c)=ab+ac(a+b)c=ac+bc(a+b)(c+d)=a(c+d)+b(c+d)注意:乘法不满足交换律程序中路径数的计算路径表达式计算将所有弧取值“1”代入,计算,得到的结果数值即为路径数12345ebacdfe(a+b)(c+d)f=412345abcdef带有循环不考虑循环:L=a(b+cd)e=2加入循环后:L+LfL+LfLfL+…进入循环次数为2L(1+fL+(fL)2)=14独立路径数某一程序的独立路径数是从程序入口到出口的多次执行中,每次至少一个语句(包

3、括运算、赋值、输入输出和判断)是新的,未被重复的。1237468591011独立路径:1-111-2-3-4-5-10-1-111-2-3-6-8-9-10-1-111-2-3-6-7-9-10-1-111-2-3-4-5-10-1-2-3-6-8-9-10-1-112.路径编码路径“与/或”树在路径表达始中,有两种运算:加:表示并列关系乘:表示串行关系在“树”中,用“∧”表示“与”关系用“∨”表示“或”关系abcdehfga(b+c+d+e)(f+g)+hV∧haVVVVbcfgde叶节点表示弧中间节点表示弧的关系路径树的特征Nu个进入端v个流出端对任一节点,设其进入端个数为u,流出端个数

4、为v,N(u,v)来表示这个节点u=0,为根节点v=0,为叶节点否则,为中间节点2.路径树中有且只有一个根节点3.路径树中的每一个叶节点,都对应了它在程序流图中的一段弧;反之,程序流图中的任一控制流线也都对应了树中的一个叶节点4.路径树中的任一非根节点,其流入端个数必定为1,因而从根节点到树中的任一节点有且只有一条路径简化路径树∧A1∧AnB1Bn∧A1AnB1Bn1.路径树中,如果与节点的子节点中仍然有与节点,就将孙节点提到子节点的位置,并去掉该与节点VA1VAnB1BmVA1AnB1Bm2.路径树中,如果或节点的子节点中仍然有或节点,就将孙节点提到子节点的位置,并去掉该或节点∧ABAB3

5、.如果路径树的与节点有一子节点是叶节点,可以将此叶节点合并到左、右邻节点中,因而可以去掉该分支。其相邻节点可能为一下情况:(1)相邻节点也是叶节点VABACAD∧AVBDC(2)相邻节点是或节点,如联结了B,C,D三个叶节点,则可以将A“乘”入到这些节点中∧A∧BC∧ABC(3)相邻节点是与节点,如联结了B,C两个叶节点,则可以将A“乘”入到最左的节点中V∧haVVVVbcfgdeV∧haVVebfgV∧habVaefgVa(b+c+d+e)(f+g)+h(ab+ac+ad+ae)(f+g)+h路径编码为了用计算机来自动处理路径路径执行的特点:执行一次程序,就是对路径树的一次遍历abcdeh

6、fgV∧haVVVVbcfgde不同路径的差别在于“或”节点的选择在编码时,考虑对“或”节点的出端进行编码编码方法若或节点的出端个数为v,其第i个分支的编码为十进制数i-1的L位二进制码,其中L=[log2(v-1)+1],[]为取整运算V01V000110V000110V11000001010011100路径编码:从根节点出发遍历该路径各个叶节点后又回到根节点,所经历的所有或节点出端编码的序列V∧haVVVVbcfgde0000011111abf000acf0100adf01100aef01110h1abf0000acf0010adf0100aef0110h1V∧habVaefgVacad

7、010100011011路径译码在给出某个路径的编码后,找到与其对应的程序的路径,这一过程称为路径译码。译码也需要遍历路径树算法Decode(N(v):流出端个数为v的节点)inti,n;Beginif(N(v)是或节点)then取编码的前[log2(v-1)+1]位;将其从编码串中删除;取n的值为这[log2(v-1)+1]位二进制编码的十进制数;if(N(v)的第n+1流出端是叶节点)then将此叶节点的

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

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

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