白盒测试练习_第1页
白盒测试练习_第2页
白盒测试练习_第3页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1、在白盒测试用例设计中,有语句覆盖、分支覆 盖、条件覆盖、路径覆盖等,其中(A)是最 强的覆盖准则。为了对如下图所示的程序段进行覆盖测试,必须适当地选取测试用例组。若x, y是两个变量,可供选择的测试用例组共有I、IK皿、IV四组,如表中给出,则实现判定覆盖至少应釆取的测试用例组是(B )或(C);实现条件覆盖至少应采取的测试用例组是(D);实现路径覆盖至少应釆取的测试用例组是(E)或(F )。供选择的答案A: 语句覆盖BF:I和II组条件覆盖II和1【1组判定覆盖路径覆盖1【1和IV组I和IV组 1、II、III组 II、IIL IV组 I、IIL IV组arc! S2)or (y=lAB

2、1zy测用陶03渕閒附U12aiOTMtj-1231 I、II、IV组2阅读下面这段程序,使用逻辑覆盖法进行测试,请问哪一组关于(a, b,c)的输入值可以达到条件覆盖。(D )int func(int a, b, c) int k=l;辻(a>0)(b<0)(a+c>0) )k二k+d;else k=k+b;if (c>0)k二k+c;return k;A. (a, b, c) = (3,6,1)、(一4, 一5, 7)B. (a, b, c) = (2,5,8)、(-4,-9,-5)C. (a, b, c) = (6, &-2)、(1, 5, 4)D. (a

3、, b, c)二(4,9,2)、(-4, 8, 3)3. 阅读下面这段程序,使用逻辑覆盖法进行测试,请问哪一组关于 (a,b,c)的输入值可以达到判定覆盖。(D )int func(int a, b, c)int k=l;辻(a>0) && (b<0) && (a+c>0) ) k=k+a;else k=k+b;if (c>0) k二k+c;return k;A. (a, b, c) = (3,6,1)、(-4,-5, 7)B. (a, b, c) = (2,5,8)、(-4,-9,-5)C. (a, b, c) - (6, &一

4、2)、(1, 5, 4)D. (a, b, c) - (4, 一9, 一2)、(-4, & 3)4阅读下面这段程序,使用逻辑覆盖法进行测试,请问哪一组关于(a, b,c)的输入值可以达到判定条件覆盖int func (int a,b,c)int k=l;if ( (a>0)(b<0)(a+c>0)else k=k+b;辻(c>0)k二k+c;return k;A. (a, b, c) = (3,6,1)、(-4,-5,7)4, 9,-5)C. (a, b, c)二(6, &-2)、(1,5,4)(B )k=k+a;B. (a, b, c) = (2, 5

5、, 8)、(一D. (a, b, c) = (4, 9, -2).(-4, & 3)5、下面是一段求最大值的程序,其中datalist是数据表,n是datalist的长度。int GetMax(int n, int datalist)int k二0;for ( int j二1; j<n; j+ )if ( datalistj > datalistk ) k二j;return k;(1) 画出该程序的控制流图,并计算其McCabe环路复杂性。(2) 用基本路径覆盖法给出测试路径。(3) 为各测试路径设计测试用例。6、下面是选择排序的程序,其中datalist是数据表,它有两个

6、数据成员: 一是元素类型为Element的数组V,另一个是数组大小n。算法中用到两个操作, 一是取某数组元素Vi的关键码操作getKey (), 一是交换两数组元素内容的操 作 Swap():void SelectSort ( datalist & list ) /对表list. V0到1 ist. Vn-1进行排序,n是表旳前长度。for ( int i = 0; i < list. nl; i+ ) int k = i ;/在 1 ist. Vi. key 到 1 ist. Vn-1. key 中找具有最小关键码的对象for ( int j = i+1; j < lis

7、t, n; j+)if ( list. Vj. getKey ( ) < list. Vk. getKey ( ) ) k = j;当前具最小关键码的对象if ( k != i ) Swap ( list. Vi, list. VkJ );/交换(1) 试计算此程序段的McCabe复杂性;(2) 用基本路径覆盖法给出测试路径;(3) 为各测试路径设讣测试用例。7、下面是快速排序算法中的一趟划分算法,其中datalist是数据表,它有 两个数据成员:一是元素类型为Element的数组V,另一个是数组大小n。算法中 用到两个操作,一是取某数组元素Vi的关键码操作getKey (), 一是交换

8、两数 组元素内容的操作Swap(): int Partition ( datalist &1ist, int low, int high ) 在区间low, high 以第一个对象为基准进行一次划分,k返回基准对象回放 位置。int k = low; Element pivot = list. Vlow ; /基准对象for ( int i = low+1: i <= high; i+ )/检测整个序列,进行划分if ( list. Vi. getKey ( ) < pivot. getKey( ) && + k != i )Swap ( list. Vk, list. ViZ );/小于基准的交换到左侧去Swap ( list. VlowZ, list. Vk );/将基准对象就位return k;/返回基准对象位置(1) 试画岀它的程序流程图;(2) 试利用路径覆盖方法为它设讣足够的测试用例(循环次数限定为0次,1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论