




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1、在白盒测试用例设计中,有语句覆盖、分支覆盖、条件覆盖、路径覆盖等,其中(a)是最强的覆盖准则。为了对如下图所示的程序段进行覆盖测试,必须适当地选取测试用例组。若 x, y是两个变量,可供选择的测试用例组共有 、 、 、 四组,如表中给出,则实现判定覆盖至少应采取的测试用例组是(b)或(c);实现条件覆盖至少应采取的测试用例组是(d);实现路径覆盖至少应采取的测试用例组是(e)或(f)。供选择的答案a:语句覆盖条件覆盖 判定覆盖 路径覆盖b f: 和 组 、 、 组 、 、 组 和 组 和 组 、 、 组 和 组 、 、 组解答: a. b. c. d. e. f.2. 阅读下面这段程序,使
2、用逻辑覆盖法进行测试,请问哪一组关于(a,b,c)的输入值可以达到条件覆盖。(b)int func(int a,b,c)int k=1;if ( (a0) | (b0) )k=k+a; elsek=k+b;if (c0)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,8,-2)、(1,5,4)d. (a,b,c) = (4,9,-2)、(-4,8,3)3. 阅读下面这段程序,使用逻辑覆盖法进行测试,请问哪一组关于(a,b,c)的输入值可以达到判定覆盖。(d)
3、int func(int a,b,c)int k=1;if ( (a0) &(b0) )k=k+a; elsek=k+b;if (c0)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,8,-2)、(1,5,4)d. (a,b,c) = (4,-9,-2)、(-4,8,3)4. 阅读下面这段程序,使用逻辑覆盖法进行测试,请问哪一组关于(a,b,c)的输入值可以达到判定条件覆盖。(b )int func(int a,b,c)int k=1;if ( (a0) |
4、(b0) )k=k+a; elsek=k+b;if (c0)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,8,-2)、(1,5,4)d. (a,b,c) = (4,9,-2)、(-4,8,3)5、下面是一段求最大值的程序,其中datalist是数据表, n 是 datalist的长度。int getmax(int n, int datalist )int k=0;for ( int j=1; j datalistk ) k=j; return k;( 1)
5、 画出该程序的控制流图,并计算其mccabe环路复杂性。( 2) 用基本路径覆盖法给出测试路径。( 3) 为各测试路径设计测试用例。答:1intk = 0;2 intj = 1;3 while ( j datalistk )6 k = j;7j+;89returnk;控制流图如 上, mccabe 环路复杂性为 3。2. 测试路径:path1: 2 3 9path2: 2 3 5 6 7 8 3 9 path3: 2 3 5 7 8 3 93. 测试用例:path1: 取 n=1 , datalist0 = 1 , 预期结果: k=0path2: 取 n=2 , datalist0 = 1 ,
6、 datalist1 = 0 , 预期结果: k=0path3: 取 n=2 , datalist0 = 0 , datalist1 = 1 ,预期结果: k=16、下面是选择排序的程序,其中datalist是数据表,它有两个数据成员:一是元素类型为element 的数组 v,另一个是数组大小n。算法中用到两个操作,一是取某数组元素vi的关键码操作 getkey ( ),一是交换两数组元素内容的操作swap( ) :void selectsort ( datalist & list ) / 对表 list.v0到 list.vn-1进行排序 ,n 是表当前长度。for ( int i = 0;
7、 i list.n-1; i+ ) int k = i;/在 list.vi.key到 list.vn-1.key中找具有最小关键码的对象for ( int j = i+1; j list.n; j+)if ( list.vj.getkey ( ) list.vk.getkey ( ) ) k = j;/ 当前具最小关键码的对象if ( k != i ) swap ( list.vi, list.vk );/ 交换(1) 试计算此程序段的mccabe复杂性;(2) 用基本路径覆盖法给出测试路径;(3) 为各测试路径设计测试用例。解答: (1)1 int i = 0;2 while ( i li
8、st.n-1 )3 int k = i;4 int j = i+1;5 while ( j list.n )6 if ( list.vj.getkey ( ) list.vk.getkey ( ) ) 7k = j;8j+;910 if ( k != i )11 swap ( list.vi, list.vk ); 12i+;13142143567891011113mccabe 环路复杂性 = 512(2) 独立路径有 5 条:path1: 1 2 14path2: 1 2 3 5 10111213214 path3: 1 2 3 5 101213214path4:12356789510111
9、213 2 14path5:1235689510111213214(3) 为各测试路径设计测试用例:path1 : 取 n = 1路径 :取 n = 2,预期结果:路径 不可达路径 :取 n = 2,预期结果:路径 不可达路径 :取 n = 2, v0 = 2, v1 = 1,路径 :预期结果:k = 1, v0 = 1, v1 = 2取 n = 2, v0 = 2, v1 = 1,预期结果:k = 1,路径 不可达路径 :取 n = 2, v0 = 1, v1 = 2,预期结果:k = 0,路径 不可达路径 :取 n = 2, v0 = 1, v1 = 2,预期结果:k = 0, v0 =
10、1, v1 = 27、下面是快速排序算法中的一趟划分算法,其中datalist是数据表,它有两个数据成员:一是元素类型为element 的数组 v,另一个是数组大小n。算法中用到两个操作,一是取某数组 元素 vi的关键码操作 getkey ( ),一是交换两数组元素内容的操作swap( ) :int partition ( datalist &list, int low, int high ) / 在区间 low, high 以第一个对象为基准进行一次划分,k 返回基准对象回放位置。intk = low;element pivot = list.vlow;/基准对象for ( int i = low+1; i = high; i+ )/
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 植树节活动总结
- 公司个人年度工作总结参考范本
- 药品风险管理计划范例
- 县城市集中供暖工程(一期)可行性研究报告
- 《短路问题实验》课件
- 如何规划自己的未来
- 初中语+文+《小圣施威降大圣》教学设计++七年级语文上册同步教学课件
- 安全生产班组活动
- 婚礼场地租赁合同:婚礼庆典服务
- 医院医疗设备维护管理规定
- 幼儿园蔬菜水果教育PPT模板(含完整内容)
- 宫颈癌宫颈癌的预防与筛查
- 呼吸机参数设置与调整
- 医学物理学第二章应变与应力
- 2019北京市朝阳区初一(上)期末数学含答案
- 幕墙预埋件工程专项施工方案
- 一年级美术上册多变的纸拉花
- 《文明城市创建问题研究6000字(论文)》
- GB/T 38119-2019邵氏硬度计的检验
- DL-T 5190.1-2022 电力建设施工技术规范 第1部分:土建结构工程(附条文说明)
- GA/T 914-2010听力障碍的法医学评定
评论
0/150
提交评论