一、实验目的
1、掌握白盒测试用例的设计方法。
2、综合运用所学的白盒测试方法设计测试用例。
二、实验准备
1、白盒测试用例的设计方法。 2、测试用例模板。
三、实验内容
下面是选择排序的程序,其中datalist是数据表,它有两个数据成员:一是元素类型为Element的数组V,另一个是数组大小n。算法中用到两个操作,一是取某数组元素V[i]的关键码操作getKey ( ),一是交换两数组元素内容的操作Swap( ): void SelectSort ( datalist & list ) {
//对表list.V[0]到list.V[n-1]进行排序, n是表当前长度。
for ( int i = 0; i < list.n-1; i++ ) {
int k = i; //在list.V[i].key到list.V[n-1].key中找具有最小关键码的对象 for ( int j = i+1; j < list.n; j++)
if ( list.V[j].getKey ( ) < list.V[k].getKey ( ) ) k = j;
//当前具最小关键码的对象
if ( k != i ) Swap ( list.V[i], list.V[k] );//交换 } }
(1) 试计算此程序段的McCabe复杂性; (2) 用基本路径覆盖法给出测试路径; (3) 为各测试路径设计测试用例。
四、实验步骤
(1)画出程序流程图和控制流图,计算复杂度V(G),其计算公式如下: V(G)=区域个数 V(G)=边条数-结点数+2 V(G)=判定节点个数+1
1
(2)用基本路径覆盖法给出测试路径: 路径有5条: ①③ ①②⑤⑧…… ①②⑤⑨…… ①②④⑥…… ①②④⑦……
(3) 为各测试路径设计测试用例: 路径①③:取n = 1
路径①②⑤⑧……:取n = 2, 预期结果:路径⑤⑧③不可达 路径①②⑤⑨……:取n = 2, 预期结果:路径⑤⑨③不可达 路径①②④⑥⑤⑧③:
取n = 2, V[0] = 2, V[1] = 1, 预期结果:k = 1, V[0] = 1, V[1] = 2 路径①②④⑥⑤⑨③:
取n = 2, V[0] = 2, V[1] = 1, 预期结果:k = 1, 路径⑨③不可达 路径①②④⑦⑤⑧③:
取n = 2, V[0] = 1, V[1] = 2, 预期结果:k = 0, 路径⑧③不可达 路径①②④⑦⑤⑨③:
取n = 2, V[0] = 1, V[1] = 2, 预期结果:k = 0, V[0] = 1, V[1] = 2
五、实验思考
(1)良好测试用例的特征? (2)测试用例的组成元素与范例?
2
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- dfix.cn 版权所有 湘ICP备2024080961号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务