您好,欢迎来到小侦探旅游网。
搜索
您的当前位置:首页软件测试

软件测试

来源:小侦探旅游网
白盒测试用例

1.如下所示的程序段设计一组测试用例,要求分别满足语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖和路径覆盖,并画出相应的程序流程图。 void DoWork (int x,int y,int z) {

int k=0,j=0;

if ( (x>3)&&(z<10) ) { k=x*y-1;

j=sqrt(k); //语句块1

} if ( (x==4)||(y>5) ) {

j=x*y+10;

} //语句块2 j=j%3; //语句块3 }

一、分析问题

1. 画出流程图(算法流程图)

开始 a X>3AND z<10 c Y k=x*y-1; j=sqrt(k); b N e Y (x==4)||(y>5) X*y+10 d j=j%3 结束

2. 找出路径(p1代表第1条路径,依此类推) P1:(a-c-e) P2:(a-c-d) P3:(a-b-e) P4:(a-b-d)

3. 找出判定条件(用大写字母表示,M,N……)

M:x>3&&z<10 N:(x==4)||(y>5) 二、解决步骤 1、 语句覆盖

测试用例输入 (8,6,5)

输出 j=1,k=47 判定M的取值 T 判定N的取值 T 覆盖路径 P1 2、判定覆盖

p1和p4可以作为测试用例,其中p1作为取真的路径,p4作为取反的路径。 测试用例输入 (4,6,6) (1,2,11) 输出 j=1,k=23 j=0,k=0 判定M的取值 判定N的取值 T F T F 覆盖路径 P1 P4 也可以让测试用例测试路径P2和P3。相应的两组输入数据如下: 测试用例输入 (8,6,5) (1,6,11)

3、条件覆盖

对于M:x>3取真时T1,取假时F1; z<10取真时T2,取假时F2; 对于N:x=4取真时T3,取假时F3; y>5取真时T4,取假时F4。 条件:x>3,z<10,x=4,y>5

条件:x<=3,z>=10,x!=4,y<=5

根据条件覆盖的基本思路,和这8个条件取值,组合测试用例如表所示: 测试用例输入 X=1,Y=4,Z=9 X=4,Y=1,Z=9 输出 J=0,K=0 J=2,K=3 取值条件 F1,T2,F3,F4 T1,T2,T3,F4 具体取值条件 X>3,Z<10,X=4,Y<5 覆盖路径 P4(a-c-e) X<3,Z<10,X!=4,Y<5 P1(a-b-d) 输出 j=1,k=47 j=1,k=0 判定M的取值 判定N的取值 T F F T 覆盖路径 P2 P3 4、判定/条件覆盖 测试用例输入 X=1,Y=4,Z=9 X=4,Y=1,Z=9 输出 J=0,K=0 J=2,K=3 取值条件 F1,T2,F3,F4 T1,T2,T3,F4 具体取值条件 X>3,Z<10,X=4,Y<5 覆盖路径 P4(a-c-e) X<3,Z<10,X!=4,Y<5 P1(a-b-d) 5、组合覆盖 1) X>3,Z<10 2)X>3,Z>=10 3)X<=3,Z<10 4)X<=3,Z>=10 5)X=4,Y>5 6)X=4,Y<=5 7)X≠4,Y>5 8)X≠4,Y<=5

测试用例输入 x=4,z=5,y=6 x=4,z=10,y=5 x=3,z=5,y=6 x=3,z=10,y=5 6、路径覆盖 测试用例输入 x=4,z=5,y=8 输出 J=0,K=31 覆盖条件取值 T1,T2,T3,T4 覆盖条件组合 1,5 覆盖路径 P4(a-c-e) 输出 J=1,K=23 J=0,k=0 J=1,K=0 J=0,K=0 覆盖条件取值 T1,T2,T3,T4 T1,F2,T3,F4 F1,T2,F3,T4 F1,F2,F3,F4 覆盖条件组合 1,5 2,6 3,7 4,8 覆盖路径 P4(a-c-e) P2(a-b-e) P2(a-b-e) P1(a-b-d) x=5,z=5,y=4 x=4,z=11,y=6 x=2,z=11,y=5 J=1,K=19 J=1,k=0 J=0,k=0 T1,T2,F3,F4 T1,F2,T3,T4 F1,F2,F3,F4 1,8 2,5 4,8 P3(a-c-d) P2(a-b-e) P1(a-b-d) 黑盒测试:

1. 黑盒测试方法是在程序接口上进行测试,主要是为了发现以下错误:

是否有不正确或遗漏了的功能?

在接口上,输入能否正确地接受? 能否输出正确的结果? 是否有数据结构错误或外部信息(例如数据文件)访问错误? 性能上是否能够满足要求?

是否有初始化或终止性错误?

2. 黑盒测试(Black box testing)也称功能测试或数据驱动测试,它是已知产品所应具有的

功能,通过测试来检测每个功能是否都正常使用。

3. 黑盒测试的特点:不考虑程序内部结构和内部特性;测试人员只需知道程序输入和输出

之间的关系或功能;设计测试用例的依据是需求规格说明书或用户手册;尤其适合一些第三方测试 优点:由于上述特点,黑盒测试用来测试软件功能的正确性和可操作性是最重要的和最普遍的方法 缺点:依赖于规格说明书的正确性。 4. 等价类:

5.判定表: 1.考生录取某程序规定:“对总成绩大于450分,且各科成绩均高于85分或者是优秀毕业生,应优先录取,其余情况作其他处理。”请建立判定表。 (1) 总成绩大于450分吗? (2) 各科成绩均高于85分吗? (3) 是优秀毕业生吗? 而动作桩有两项: (1) 优先录取。 (2) 作其他处理。

2.隔一日问题

程序有三个输入变量month、day、year(month、day和year均为整数值,并且满足条件:1≤month≤12和1≤day≤31),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上隔一天的日期。例如,输入为2005年11月29日,则该程序的输出为2005年12月1日。请用判定表测试法进行测试。

(1) 分析各种输入情况,列出为输入变量month、day、year划分的有效等价类。 month变量的有效等价类: M1 = { month = 4,6,9,11 }

M2 = { month = 1,3,5,7,8,10 } M3 = { month = 12 } M4 = { month = 2 } day变量的有效等价类: D1 = { 1≤day≤26 } D2 = { day = 27 } D3 = { day = 28 } D4 = { day = 29 } D5 = { day = 30 } D6 = { day = 31 }

year变量的有效等价类: Y1 = { year是闰年 } Y2 = { year不是闰年} (2) 分析程序规格说明,结合以上等价类划分的情况给出问题规定的可能采取的操作(即列出所有的动作桩)。考虑各种有效的输入情况,程序中可能采取的操作有以下六种: a1:day+2

a2:day=1 a3:day=2 a4:month+1 a5:month=1 a6:year+1 a7:不可能

6.软件测试:2002年,测试的定义:使用人工或者自动手段来运行或测试被测试件的过程,其目的在于检验它是否满足规定的需求并弄清预期结果与实际结果之间的差别。它是帮助识别开发完成(中间或最终版本)的计算机软件(整体或部分)的正确度(correctness)、完全度(completeness)和质量(quality)的软件过程。 7。例:某报表处理系统要求用户输入处理报表的日期,日期在2005年1月至2009年12月,即系统只能对该段期间内的报表进行处理,如日期不在此范围内,则显示输入错误信息。系统日期规定由年、月的6位数字字符组成,前四位代表年,后两位代表月。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- xiaozhentang.com 版权所有 湘ICP备2023022495号-4

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务