软件考试实验报告一
assertEquals(true,dowork.doWork(4, 6, 6));
}
}
2.importjunit.framework.*;
importorg.junit.Test;
publicclassTestDoWork2extendsTestCase {
privatestaticintx,y,z;
4
F1,F2
M=F
x<=3,z>=10, M取假
5
T3,T4
N=T
x= =4,y>5, N取真
6
T3,F4
N=T
x= =4,y<=5, N取真
7
F3,T4
N=T
x! =4,y>5, N取真
8
F3,F4
N=F
x! =4,y<=5, N取假
测试用例
覆盖路径
覆盖条件
覆盖组合
输入:x=4,y=6,z=6
输出:k=23,j=1
P1(1-2-3-4-5-6-7-8-9-10-11)
T1,T2,T3,T4
1,5
输入:x=6,y=4,z=6
输出:k=23,j=√23%3
P2(1-2-3-4-5-6-9-10-11)
T1,T2,F3,F4
1,8
输入:x=2,y=6,z=6
输出:k=0,j=1
P3(1-7-8-9-10-11)
F1,T2,F3,T4
输入:{x=2,y=4,z=12}
输出:{k=0,j=0}
F1,F2,F3,F4
x<3,z>=10
x! =4,y<5
P4(1-9-10)
路径覆盖:
组合编号
覆盖条件取值
判定-条件取值
判定-条件组合
1
T1,T2
M=T
x>3,z<10,M取真
2
T1,F2
M=F
x>3,z>=10,M取假
3
F1,T2
M=F
x<=3,z<10, M取假
publicvoidsetUp()throwsException {
}
@Test
publicvoidtestDoWork() {
assertEquals(true,dowork.doWork(2, 6, 6));
三、实验流程图
流程图A流程图B
四、测试用例的编写
语句覆盖:
P1:(1-2-3-4-5-6-7-8-9-10-11)令x=4,y=6,z=6;M=T, N=T T1,T2,T3,T4
P2:(1-2-3-4-5-6-9-10-11)令x=6,y=4,z=6;M=T,N=F T1,T2,F3,F4
P3:(1-7-8-9-10-11)令x=2,y=6,z=6;M=F,N=T F1,T2,F3,T4
软件测试实验报告一
———————————————————————————————— 作者:
———————————————————————————————— 日期:
《软件测试与质量管理》实验报告
学号:
姓名:
机器号:
程序名:
实验内容:(一)白盒测试
一、目的和要求
1、掌握白盒测试技术,并能应用白盒测试技术设计测试用例
输入:{x=2,y=4,z=12}
输出:{k=0,j=0}
x<3,z>=10
x!=4,y<5
M=F,N=T
P4(1-9-10)
条件覆盖:
测试用例
取值条件
具体取值条件
通过路径
输入:{x=4,y=6,z=6}
输出:{k=23,j=1}
T1,T2,T3,T4
x>3,z<10
x= =4,y>5
P1(1-2-3-4-5-6-7-8-9-10-11)
9 j=j%3;
10 return j;
11 }
说明:程序段中每行开头的数字(1~11)是对每条语句的编号。
(1)分别以语句覆盖、判定覆盖、条件覆盖和路径覆盖方法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)。
(2)编写Java类,调用该方法,并用Junit测试工具编写测试代码进行测试。
privatestaticDoWorkdowork=newDoWork(x,y,z);
publicvoidsetUp()throwsException {
}
@Test
publicvoidtestDoWork() {
assertEquals(true,dowork.doWork(6, 4, 6));
}
}
3.importjunit.framework.*;
importorg.junit.Test;
publicclassTestDoWork3extendsTestCase {
privatestaticintx,y,z;
privatestaticDoWorkdowork=newDoWork(x,y,z);
P4:(1-9-10)令x=2,y=4,z=12; M=F, N=F F1,F2,F3,F4
判定覆盖:
测试用例
具体取值条件
判定条件
通过路径
输入:{x=4,y=6,z=6}
输出:{k=23,j=1}
x>3,z<10
x= =4,y>5
M=T, N=T
P1(1-2-3-4-5-6-7-8-9-10-11)
j=(int) Math.sqrt(k);
}
if((x==4)||(y>5))
j=x*y+10;
j=j%3;
}
publicbooleandoWork(intx,inty,intz){
returntrue;
}
}
测试用例(路径覆盖)
1.importjunit.framework.*;
importorg.junit.Test;
3,7
输入:x=2,y=4,z=12
输出:k=0,j=1
P4(1-9-10)
F1,F2,F3,F4
4,8
五、Junit测试
源程序:
publicclassDoWork {
publicDoWork(intx,inty,intz){
intk=0,j=0;
if((x>3) && (z<10)){
k=x*y-1;
publicclassTestDoWork1extendsTestCase {
privatestaticintx,y,z;
privatestaticDoWorkdowork=newDoWork(x,y,z);
publicvoidsetUp()throwsException {
}
@Test
publicvoidtestDoWork() {
2、能用Junit实施测试
二、实ห้องสมุดไป่ตู้内容
void DoWork(int x,int y,int z){
1 int k=0,j=0;
2 if(( x>3 ) && ( z<10 ))
3 {
4 k=x*y-1;
5 j=sqrt(k);
6 }
7 if(( x= =4 ) || ( y>5 ))
8 j=x*y+10;