白盒测试实训报告三角形16篇

| 浏览次数:

白盒测试实训报告三角形16篇白盒测试实训报告三角形三角形白盒测试-百度文库  三角形白盒测试  -C/iL-FENGHAL-(YICAI)-CompanyOnel  二、测试用例  1?下面是小编为大家整理的白盒测试实训报告三角形16篇,供大家参考。

白盒测试实训报告三角形16篇

篇一:白盒测试实训报告三角形

tle>三角形白盒测试-百度文库

  三角形白盒测试

  -C/iL-FENGHAL-(YICAI)-CompanyOnel

  二、测试用例

  1?语句覆盖测试用例:编号

  123

  输入

  a=bb2,c=3a=3,b4,c=5a=3,b3,c=4a=3,b4,c=5期望输出

  0123覆盖对象

  ①,⑤

  ①,②,①,②,测试结果

  01234①?②,③

  2?判定覆盖测试用例

  编号

  111213

  输入

  a=l,b2,c=3a=3,b4,c=5a=3,b3,c=4a=3,b4,c=5

  期望输出

  0123覆盖对象

  ①,⑤

  ①,②,①,②,测试结果

  012314①,②,③

  3.条件覆盖测试用例

  编号

  输入

  期望输出

  覆盖对象

  测试结果

  56789a=bb=6,c=7a=7,b=l,c=6a=l,b=7,c=6a=3,b=3,c—4a=3,b=4,c=3a=4,b=3,c=3000222FbT2,T3ThF2,T3ThT2,F3Tl,T2,T?.T4FB.000222Tl,T2,T?R4Tl,T2,T?.F”.

  4.条件-判定覆盖测试用例

  编号

  15输入

  a=l,b=6,c=7期望输出

  0覆盖对象

  F1,T2,T3(?,测试结果

  0肉

  1617a=7,b=l,c=600T1,T2,F3(?,②)

  18a=3,b=3,c=42T1,T2,T3,T4,F5,T6,F7,F8(①②③⑦)

  19a=3,c=32F,T1,T2,T3,4,F5,F6,20a=4,b=3jc=32T1T2,T3,F4,T5,F6,T7,F821a=3,b=3,c=33(①,②③,@)FbT2,T3

  (①②③)

  H,F2,T3(①②④⑥)

  3222T1,F2,T3(①,②))

  00a=l,b=7,c=622

  a=3,c=5115?条件组合覆盖测试用例

  编号

  23输入

  a=l,b=6,c=7a=7,b=6,c=la=l,b=7,c=6a=3,b=3,c=3a=3,b=3,c=4期望输出

  00032覆盖对象

  Fl,T2,T3Tl,F2,T3ThT2,F2ThT2,T?T4测试结果

  0003224

  25

  2627Tl,T2,T3.F4,4

  28a=4,b=3,c=32T1,T2,T3,F4,TUT1,T2,T3,F4,229a=3,b=4,c=51130a=3,b=4,c=32T1,T2,T3,F4,T?U2备注

  编号

  313233

  其他条件组合,无法到达结束

  基本路径覆盖测试用例

  期望输出

  输入

  覆盖对象

  a=l,b=6,c=7a=7,b=6,c=la=l,b=7,c=6000A->DA->B->DA->B->C->D测试结果

  0005

篇二:白盒测试实训报告三角形

tle>判定三角形的程序及黑盒白盒测试-百度文库

  --WORD格式--可编辑--

  黑盒白盒测试

  实验报告

  学院:计算机科学与工程

  专业:软件工程

  姓名:张子晗

  学号:152210702236

  ---

  --WORD格式--可编辑--

  软件测试计划

  测试目的

  1.

  练习并掌握软件测试管理的一般过程与步骤

  2.

  掌握测试管理的人工过程和能通过相关管理软件实现以

  下操作:

  1)

  创建和管理多个测试组和用户

  2)

  配置测试环境,编写详细测试计划,安排测试进度

  3)

  实施测试,执行测试

  4)

  对测试进行评估

  测试题目

  关于三角形问题的测试

  测试方法

  1.

  对于主题进行黑盒测试,测试内容包括等价类划分测试,边界值分析测试,决策表方法使用。

  2.

  对于主题进行白盒测试,测试内容包括语句覆盖测试,分

  支覆盖测试,条件覆盖测试,分支

  /条件覆盖测试,条件

  组合覆盖测试以及基本路径测试。

  ---

  --WORD格式--可编辑--

  测试资料

  1.

  黑盒测试:

  黑盒测试也称功能测试,它是通过测试来检测每个功能是否

  都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进

  行测试,它只检查程序功能是否按照需求规格说明书的规定正常

  使用,程序是否能适当地接收输入数据而产生正确的输出信息。

  黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对

  软件界面和软件功能进行测试。

  黑盒测试是以用户的角度,从输入数据与输出数据的对应关

  系出发进行测试的。

  很明显,如果外部特性本身设计有问题或规

  格说明的规定有误,用黑盒测试方法是发现不了的。

  2.

  白盒测试:

  白盒测试又称结构测试、透明盒测试、逻辑驱动测试或基于

  代码的测试。

  白盒测试是一种测试用例设计方法,盒子指的是被

  测试的软件,白盒指的是盒子是可视的,你清楚盒子内部的东西

  以及里面是如何运作的。

  "白盒"法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。

  "白盒"法是穷举路径测试。

  在使用这

  一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑

  着手,得出测试数据。贯穿程序的独立路径数是天文数字。

  ---

  --WORD格式--可编辑--

  采用什么方法对软件进行测试呢

  ?常用的软件测试方法有两

  大类:静态测试方法和动态测试方法。其中软件的静态测试不要

  求在计算机上实际执行所测程序,主要以一些人工的模拟技术对

  软件进行分析和测试

  ;而软件的动态测试是通过输入一组预先按

  照一定的测试准则构造的实例数据来动态运行程序,而达到发现

  程序错误的过程。在动态分析技术中

  ,最重要的技术是路径和分

  支测试。

  3.

  黑盒与白盒测试的比较:

  项目

  规划

  优点

  黑盒测试法

  功能的测试

  能确保从用户的角度出

  发进行测试

  无法测定程序内部特定

  部位;当规格说明有误

  则不能发现问题。

  白盒测试法

  结构的测试

  能从程序内部的特定部位

  进行覆盖测试

  无法检查程序的外部特

  性;无法对未实现规格说

  明的程序内部欠缺部分进

  行测试

  缺点

  应用技术

  边界分析法;

  等价类划分法;

  决策表测试。

  语句覆盖,判定覆盖

  条件覆盖,判定/条件覆盖

  路径覆盖,循环覆盖

  模块接口测试

  ---

  --WORD格式--可编辑--

  数据整理

  测试的所得到的用例实验报告,BUG报告,需要进行反馈和最后

  反馈的工作在测试

  的归档,归档的工作按项目计划中所规定的进行。

  项结束后,整理成测试总结报告后进行,具体的日期在项目计划中有

  规定。

  不同阶段的测试都要重复以上步骤。

  三角形问题黑盒测试报告

  1.

  问题描述:

  完成一段程序,要求实现这样的功能。输入三个整数,构成三角形的三条边,输入范围是1-100,判断结果是等腰三角形,等边三角形,不构成三角形或是一般三角形,直角三角形,判断结果均打印输出。

  2.

  程序代码(c++):

  #include

  usingnamespacestd;

  voidmain()

  {

  inta,b,c;

  cout<<”请输入三条边的长度(

  1-100)”<

  ---

  --WORD格式--可编辑--

  cin>>a>>b>>c;

  if(a>=1&&b>=1&&c>=1&&a<=100&&b<=100&&c<=100)

  {

  if(a+b>c&&a+c>b&&b+c>a)

  {

  cout<<”能够构成三角形”;

  if

  (a==b&&b==c)

  cout<<”为等边三角形”;

  elseif

  ((a==b&&a!=c)||(b==c&&c!=a)||(a==c&&a!b))

  cout<<”为等腰三角形”;

  else

  cout<<”为一般三角形”;

  }

  else

  cout<<”不能构成三角形”;

  }

  else

  cout<<”输入的值超出给定范围”;

  }

  ---

  --WORD格式--可编辑--

  3.

  测试方法:

  黑盒测试(等价类划分+边界值分析+决策表方法)

  1)等价类划分

  本程序共计有四种可能的输出:一般三角形,等腰三角形,等边三角形,不构成三角形。

  输入

  a,b,c

  有效等价类

  编号

  无效等价类

  a

  输入的值超出范

  围

  b

  输入的值超出范

  围

  c

  输入的值超出范

  围

  编号

  边为a,b,c

  的一般1

  三角形

  a,b,c

  边为a,b,c

  的等边2

  三角形

  a,b,c

  边为a,b,c

  的等腰3

  三角形

  a,b,c

  边为a,b,c

  不能组4

  成三角形

  2)

  边界值分析方法

  数值a

  0,101

  根据题目要求,输入值中1为最小值,100

  为最大值.于是取刚好小于1的0和刚好大

  于100的101进行边界值分析。

  数值b

  0,101

  根据题目要求,输入值中1为最小值,100

  为最大值.于是取刚好小于1的0和刚好大

  于100的101进行边界值分析。

  ---

  --WORD格式--可编辑--

  数值c1,101

  根据题目要求,输入值中1为最小值,100

  为最大值.于是取刚好小于1的0和刚好大

  于100的101进行边界值分析。

  3)

  决策表方法

  i.

  确定规则个数,本题的决策表共计四个条件。

  C1:a,b,c构成三角形?

  C2:a=b?C3:a=c?

  C4:b=c?

  每个条件可以取两个值,共计有

  16种规则。

  ii.

  iii.

  iv.

  v.

  vi.

  列出所有的条件桩和动作桩

  输入输入项。

  输入动作项,得到初始决策表。

  化简,合并相似规则,最后得到三角形问题的最终决策表。

  规则

  规则

  1-8

  选项

  条件:

  C1:a,b,c

  构成三角

  形?

  C2:a=b?

  C3:a=c?

  C4:b=c?

  规则

  规则

  规则

  11

  规则

  12

  规则

  13

  规则

  14

  规则

  15

  规则

  16

  N

  -

  -

  -

  Y

  Y

  Y

  Y

  Y

  Y

  Y

  N

  Y

  Y

  N

  Y

  Y

  Y

  N

  N

  Y

  N

  Y

  Y

  Y

  N

  Y

  N

  Y

  N

  N

  Y

  Y

  N

  N

  N

  ---

  --WORD格式--可编辑--

  动作:

  A1:非三角形

  A2:一般三角形

  A3:等腰三角形

  A4:等边三角形

  A5:不可能

  白盒测试(语句覆盖,判定覆盖及基本路径测试方法)

  程序的流程图如下

  ---

  --WORD格式--可编辑--

  1)

  语句覆盖

  测试数据

  a=100,b=101,

  c=120

  a=3,b=5,

  c=9

  a=5,b=5,c=5

  a=5,b=5,c=3

  执行路径

  预期结果

  输入的值超出

  给定范围

  实际结果

  输

  入的值超

  出

  给定范围

  不

  能构成三

  角

  形

  等边三角形

  等腰三角形

  一般三角形

  2,3

  不能构成三角

  形

  2,4,5,7

  2,4,6,9

  等边三角形

  等腰三角形

  a=5,b=4,c=6

  2,4,6,10,12

  一般三角形

  2)

  判定覆盖

  测试数据

  a=100,b=101,

  c=120

  a=3,b=5,

  c=9

  a=5,b=5,c=5

  a=5,b=3,c=5

  a=5,b=4,c=6

  a=5,b=5,c=3

  a=3,b=5,c=5

  执行路径

  预期结果

  输入的值超出

  给定范围

  实际结果

  输

  入的值超

  出

  给定范围

  不

  能构成三

  角

  形

  等边三角形

  等腰三角形

  一般三角形

  等腰三角形

  等腰三角形

  2,3

  不能构成三角

  形

  2,4,5,7

  2,4,6,9

  等边三角形

  等腰三角形

  2,4,6,10,12

  一般三角形

  2,4,5,8

  2,4,6,10,11

  等腰三角形

  等腰三角形

  ---

  --WORD格式--可编辑--

  3)

  路径测试

  测试数据

  a=100,b=101,

  c=120

  a=3,b=5,

  c=9

  a=5,b=5,c=5

  a=5,b=3,c=5

  a=5,b=4,c=6

  a=5,b=5,c=3

  执行路径

  预期结果

  输入的值超出

  给定范围

  实际结果

  输

  入的值超

  出

  给定范围

  不

  能构成三

  角

  形

  等边三角形

  等腰三角形

  一般三角形

  等腰三角形

  等腰三角形

  2,3

  不能构成三角

  形

  2,4,5,7

  2,4,6,9

  等边三角形

  等腰三角形

  2,4,6,10,12

  一般三角形

  2,4,5,8

  2,4,6,10,11

  等腰三角形

  等腰三角形

  a=3,b=5,c=5

  ---

篇三:白盒测试实训报告三角形

tle>白盒测试实验报告_三角形(2)-百度文库

  ..白盒测试实验报告——三角形

  一、实验目的

  (1)巩固白盒测试技术,能熟练应用控制流覆盖方法设计测试用例;

  (2)学习测试用例的书写。

  二、实验内容

  判断三角形类型

  输入三个整数a、b、c,分别作为三角形的三条边,通过程序判断这三条边是否能构成三角形?如果能构成三角形,则判断三角形的类型(等边三角形、等腰三角形、一般三角形)。要求输入三个整数a、b、c,必须满足以下条件:1≤a≤200;1≤b≤200;1≤c≤200。

  要求:

  为测试该程序的方便,请将三角形判断的算法尽量放入一个函数中。

  (1)画出程序的流图;

  (2)分别以语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖设计测试用例,并写出每个测试用例的执行路径

  要求:设计测试用例时,每种覆盖方法的覆盖率应尽可能达到100%

  (3)请采用基本路径测试方法对程序进行测试,并给出具体测试用例信息。

  (4)通过你的测试,请总结你所使用测试方法发现的Bug。

  三、实验要求

  (1)根据题目要求编写测试用例

  (2)撰写实验报告

  (3)有关的实现程序请附到实验报告中

  (4)实验报告命名规则:学号后两位+姓名_白盒实验

  四、实验报告

  (1)程序代码:

  ;.

  ..1.importjava.io.*;

  public

  classsanjiaoxing{

  private

  static

  int

  x;private

  static

  int

  y;private

  static

  int

  z;2.public

  static

  voidmain(Stringarg[]){

  intv=0;

  System.out.println("请输入三角形第一条边的长!");x=getside(v);

  System.out.println("请输入三角形第二条边的长!");y=getside(v);

  System.out.println("请输入三角形第三条边的长!");z=getside(v);

  ifzhijiaotriangle();}

  3.public

  static

  intgetside(intv){

  BufferedReaderinput=newBufferedReader(new

  InputStreamReader(System.in));

  try{}catch(IOExceptione){}

  returnv;

  }

  4public

  static

  voidifzhijiaotriangle(){

  if((x>0&&x<200)&&(y>0&&y<200)&&(z>0&&z<200)){5if(x+y<=z||x+z<=y||z+y<=x){6.System.out.println("您输入的三边不能构成三角形");}

  v=Integer.parseInt(input.readLine());

  7.else{

  System.out.println("一般三角形");

  }

  ;.

  ..

  8.else

  if(x==y||x==z||y==z){9

  }11.else{

  System.out.println("超出");

  }}}if(x==y&&y==z)10.System.out.println("您输入的三角形是等边三角形");12.elseSystem.out.println("您输入的三角形是等腰三角形");

  }(2)程序的流图:

  ;.

  ..1,2,3ab4c511eg67h8j9dmk1012fil13n(3)语句覆盖;

  编号

  12345编号

  123测试用例

  (0,10,20)(10,20,35)(3,3,5)(3,3,3)(10,20,25)测试用例

  (0,10,20)

  执行路径

  a,c,da,b,e,fa,b,g,j,k,la,b,g,j,m,na,b,g,h,i执行路径

  a,c,d覆盖语句

  1,2,3,4,11,131,2,3,4,5,6,131,2,3,4,5,7,9,10,131,2,3,4,5,7,9,12,131,2,3,4,5,7,8,13覆盖判定

  F1T1,F2T1,T2,F3预输出结果

  超出

  不能构成三角形

  等腰三角形

  等边三角形

  一般三角形

  (4)判定覆盖;

  预输出结果

  超出

  不能构成三角形

  一般三角形

  (10,20,35)

  a,b,e,f(10,20,25)

  a,b,g,h,i;.

  ..45(3,3,5)

  (3,3,3)

  a,b,g,j,k,la,b,g,j,m,nT1,T2,T3,F4T1,T2,T3,T4等腰三角形

  等边三角形

  (5)条件覆盖:

  条件

  a>=1&&a<=200b>=1&&b<=200c>=1&&c<=200a+b>ca+c>bb+c>aa==bb==ca==c

  编号

  测试用例

  执行路径

  覆盖条件

  预输出结果

  符号

  1T2T3T4T5T6T7T8T9T12(0,10,20)

  (10,20,35)

  a,c,da,b,e,f-1T,2T,3T超出

  1T,2T,3T,-4T,不是三角形

  5T,6T3(10,35,20)a,b,e,f1T,2T,3T,4T,不是三角形

  -5T,6T4(35,10,20)a,b,e,f1T,2T,3T,4T,不是三角形

  5T,-6T5(10,20,25)a,b,g,h,i1T,2T,3T,4T,一般三角形

  5T,6T,-7T,-8T,-9T6(3,3,3)a,b,g,j,m,n1T,2T,3T,4T,等边三角形

  5T,6T,7T,8T,9T7(3,3,5)a,b,g,j,k,l1T,2T,3T,4T,5T,6T,7T,-8T,-9T等腰三角形

  (6)判定/条件覆盖;

  编号

  1测试用例

  (0,10,20)

  执行路径

  a,c,d覆盖条件

  -1T,2T,3T覆盖判定

  F1预输出结果

  超出

  ;.

  ..2(10,20,35)

  a,b,e,f1T,2T,3T,T1,F2-4T,5T,6T不能构成三角形

  3(10,35,20)a,b,e,f1T,2T,3T,T1,F24T,-5T,6T不能构成三角形

  4(35,10,20)

  a,b,e,f1T,2T,3T,4T,5T,-6TT1,F2不能构成三角形

  5(10,20,25)a,b,g,h,i1T,2T,3T,T1,T2,F34T,5T,6T,-7T,-8T,-9T一般三角形

  6(3,3,3)

  a,b,g,j,m,n1T,2T,3T,T1,T2,T3,T44T,5T,6T,7T,8T,9T等边三角形

  7(3,3,5)

  a,b,g,j,k,l1T,2T,3T,4T,5T,6T,7T,-8T,-9TT1,T2,T3,F4等腰三角形

  (7)组合覆盖;

  编号

  测试用例

  执行路径

  12345678(0,201,201)(201,201,1)

  (201,2,201)

  (2,201,202)

  (1,2,201)(1,201,2)(201,1,2)(10,20,35)

  a,c,da,c,da,c,da,c,da,c,da,c,da,c,da,b,e,f-1T,-2T,-3T-1T,-1T,3T-1T,2T,-3T1T,-2T,-3T1T,2T,-3T1T,-2T,3T-1T,2T,-3T1T,2T,3T,-4T,5T,6T9(10,35,20)

  a,b,e,f1T,2T,3T,4T,-5T,6T超出

  超出

  超出

  超出

  超出

  超出

  超出

  不能构成三角形

  不能构成三角形

  覆盖条件

  预输出结果

  ;.

  ..10(35,10,20)

  a,b,e,f1T,2T,3T,4T,5T,-6T不能构成三角形

  11(3,4,5)a,b,g,h,i1T,2T,3T,4T,5T,6T,-7T,-8T,-9T一般三角形

  12(3,3,5)

  a,b,g,j,k,l1T,2T,3T,4T,5T,6T,7T,-8T,-9T等腰三角形

  13(5,3,3)a,b,g,j,k,l1T,2T,3T,4T,5T,6T,-7T,8T,-9T等腰三角形

  14(3,5,3)a,b,g,j,k,l1T,2T,3T,4T,5T,6T,-7T,-8T,9T等腰三角形

  15(3,3,3)a,b,g,j,m,n1T,2T,3T,4T,5T,6T,7T,8T,9T等边三角形

  (8)基本路径覆盖;

  经过计算,程序流图的环复杂度为5,因此基本路径有5条

  编号

  12345

  附录:测试用例书写格式(语句覆盖为例)

  测试用例表

  编号

  12

  测试用例

  执行路径

  覆盖条件

  覆盖语句

  预输出结果

  测试用例

  (10,20,35)

  (3,4,5)

  (3,3,5)(3,3,3)(0,201,201)基本路径

  a,b,c,fa,b,g,h,ia,b,g,j,k,l预输出结果

  不能构成三角形

  一般三角形

  等腰三角形

  a,b,g,j,m,n等边三角形

  a,c,d超出

  (0,10,20)

  ;.

篇四:白盒测试实训报告三角形

tle>三角形程序白盒测试-百度文库

  三角形判断问题白盒测试

  一、问题描述

  针对三角形的形状判定程序设计测试用例,进行白盒测试。假定这里构成三角形的边取值只能为整数。

  程序判定的类型有:

  输入数据不是数字

  1、输入不能构成整数边的三角形{输入不为整数

  输入数据不能构成三角形2、等边三角形

  3、等腰三角形

  4、普通三角形

  二、实验目的

  (1)

  (2)

  (3)

  (4)

  掌握白盒测试的原理;

  掌握使用逻辑覆盖和基路径测试等设计测试用例的方法;

  掌握单元测试的方法步骤;

  掌握控制流图的画法和通过控制流图找出基路径的方法。

  三、实验环境

  平台:win1064位

  环境:Eclipse(neon版本)

  四、实验过程

  (一)

  编写判定三角形类别的程序:核心代码:

  public

  static

  intDefiniteShape(int

  a,int

  b,int

  c){

  if((a+b>c)&&(b+c>a)&&(a+c>b)){//判断可以构成三角形

  }return0;//非三角形

  }if((b==c)&&(a==b)){

  }if((a==b)||(b==c)||(c==a)){

  }return3;//普通三角形

  return2;//等腰三角形

  return1;//等边三角形

  主函数调用代码:

  shape=DefiniteShape(a,b,c);

  if(shape==0){

  }else

  if(shape==1){

  }else

  if(shape==2){

  }else

  if(shape==3){

  }

  System.out.println("普通三角形!");System.out.println("等腰三角形!");System.out.println("等边三角形!");System.out.println("输入数据不能构成三角形!");(二)

  画出程序流程图:

  开始输入a,b,c判断a,b,c是否都为数字否是判断是否都为整数否是

  a+b>c&&b+c>a&&a+c>b否是是a==b&&b==c否是a==b||b==c||a==c否提示

  等边三角形

  提示

  等腰三角形

  提示

  普通三角形

  提示

  请输入能构成三角形的整数

  结束

  (三)

  画出控制流图:

  123456798101112

  (四)

  逻辑覆盖测试:

  条件有:

  1)

  a为数字

  2)

  b为数字

  3)

  c为数字

  4)

  5)

  6)

  7)

  8)

  9)

  10)

  11)

  12)

  a为整数

  b为整数

  c为整数

  a+b>cb+c>aa+c>ba==bb==ca==c所有测试用例(覆盖率达到100%)

  Case1Case2Case3Case42

  Case5Case6Case7Case8Case9Case103

  Case11Case12Case13Case14Case15语句覆盖

  输入

  期望输出

  覆盖对象

  请输入能构成三角a=’三’,b=’角’,c=’形’

  执行路径:1-2-3-7-12形的整数。

  请输入能构成三角执行路径:1-2-3-4-5-6-a=’5’,b=’2’,c=’2’

  9-10-12形的整数。

  执行路径:1-2-3-4-5-6-a=’2’,b=’2’,c=’2’

  等边三角形!

  8-12执行路径:1-2-3-4-5-6-a=’3’,b=’4’,c=’5’

  普通三角形!

  9-11-12判定覆盖

  输入

  期望输出

  覆盖对象

  请输入能构成三角a=’字’,b=’0’,c=’0’

  执行路径:1-2-3-7-12形的整数。

  请输入能构成三角a=’3’,b=’2.3’,c=’3.3’

  执行路径:1-2-3-4-7-12形的整数。

  请输入能构成三角执行路径:1-2-3-4-5-7-a=’6’,b=’3’,c=’2’

  12形的整数。

  执行路径:1-2-3-4-5-6-a=’12’,b=’12’,c=’12’

  等边三角形!

  8-12执行路径:1-2-3-4-5-6-a=’24’,b=’13’,c=’13’

  等腰三角形!

  9-10-12执行路径:1-2-3-4-5-6-a=’15’,b=’20’,c=’25’

  普通三角形!

  9-11-12条件覆盖

  输入

  期望输出

  覆盖对象

  请输入能构成三角a=’汉’,b=’2’,c=’3’

  满足:T1,F2,F3形的整数。

  请输入能构成三角a=’6’,b=’d’,c=’字’

  满足:F1,T2,T3形的整数。

  请输入能构成三角a=’5.3’,b=’3.0’,c=’2.3’

  满足:F4,T5,F6形的整数。

  请输入能构成三角a=’6’,b=’2.3’,c=’3满足:T4,F5,T6形的整数。

  请输入能构成三角a=’2’,b=’3’,c=’5’

  满足:F7,T8.T9形的整数。

  测试结果

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  等边三角形!

  普通三角形!

  测试结果

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  等边三角形!

  等腰三角形!

  普通三角形!

  测试结果

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  Case16a=’10’,b=’-3’,c=’6’

  Case17a=’3’,b=’8’,c=’4’

  Case18a=’3’,b=’3’,c=’3’

  Case19a=’25’,b=’26’,c=’27’

  4请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  等边三角形!

  普通三角形!

  满足:T7,F8,T9满足:T7,T8,F9满足:T10,T11,T12满足:F10,F11,F12请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  等边三角形!

  普通三角形!

  测试结果

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  等边三角形!

  普通三角形!

  等腰三角形!

  等腰三角形!

  等腰三角形!

  判定-条件覆盖

  输入

  期望输出

  覆盖对象

  请输入能构成三角Case20a=’a’,b=’b’,c=’c’

  执行路径:1-2-3-7-12形的整数。

  请输入能构成三角执行路径:1-2-3-4-5-7-Case21a=’1’,b=’2’,c=’3’

  形的整数。

  12请输入能构成三角执行路径:1-2-3-4-5-7-Case22a=’15’,b=’2’,c=’5’

  形的整数。

  12请输入能构成三角执行路径:1-2-3-4-5-7-Case23a=’21’,b=’100’,c=’22’

  形的整数。

  12请输入能构成三角Case24a=’3.2’,b=’2.3’,c=’2.3’

  执行路径:1-2-3-4-7-12形的整数。

  执行路径:1-2-3-4-5-6-Case25a=’12’,b=’12’,c=’12’

  等边三角形!

  8-12执行路径:1-2-3-4-5-6-Case26a=’25’,b=’51’,c=’50’

  普通三角形!

  9-11-12执行路径:1-2-3-4-5-6-Case27a=’12’,b=’21’,c=’21’

  等腰三角形!

  9-10-12执行路径:1-2-3-4-5-6-Case28a=’25’,b=’25’,c=’22’

  等腰三角形!

  9-10-12执行路径:1-2-3-4-5-6-Case29a=’3’,b=’23’,c=’23’

  等腰三角形!

  9-10-124

  条件组合覆盖

  输入

  期望输出

  覆盖对象

  请输入能构成三角执行路径:1-2-3-4-5-7-Case30a=’1’,b=’2’,c=’3’

  形的整数。

  12请输入能构成三角Case31a=’2’,b=’3’,c=’a’

  执行路径:1-2-3-7-12形的整数。

  请输入能构成三角Case32a=’3’,b=’x’,c=’3’

  执行路径:1-2-3-7-12形的整数。

  请输入能构成三角Case33a=’5’,b=’s’,c=’d’

  执行路径:1-2-3-7-12形的整数。

  请输入能构成三角Case34a=’f’,b=’3’,c=’3’

  执行路径:1-2-3-7-12形的整数。

  请输入能构成三角Case35a=’g’,b=’6’,c=’h’

  执行路径:1-2-3-7-12形的整数。

  请输入能构成三角Case36a=’h’,b=’发’,c=’52’

  执行路径:1-2-3-7-12形的整数。

  请输入能构成三角Case37a=’都’,b=’是’,c=’字’

  执行路径:1-2-3-7-12形的整数。

  测试结果

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  Case38a=’3’,b=’3’,c=’223’

  Case39Case40Case41Case42Case43Case44Case45请输入能构成三角形的整数。

  请输入能构成三角a=’3’,b=’9’,c=’52.3’

  形的整数。

  请输入能构成三角a=’6’,b=’2.3’,c=’23’

  形的整数。

  请输入能构成三角a=’12’,b=’3.5’,c=’3.6’

  形的整数。

  请输入能构成三角a=’6.3’,b=’31’,c=’3.3’

  形的整数。

  请输入能构成三角a=’6.3’,b=’336’,c=’6’

  形的整数。

  请输入能构成三角a=’2.3’,b=’1.3’,c=’2.3’

  形的整数。

  请输入能构成三角a=’3.6’,b=’3.2’,c=’6’

  形的整数。

  执行路径:1-2-3-4-5-7-12执行路径:1-2-3-4-7-12执行路径:1-2-3-4-7-12执行路径:1-2-3-4-7-12执行路径:1-2-3-4-7-12执行路径:1-2-3-4-7-12执行路径:1-2-3-4-7-12执行路径:1-2-3-4-7-12请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  普通三角形!

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  等边三角形!

  普通三角形!

  等腰三角形!

  等腰三角形!

  等腰三角形!

  Case46a=’12’,b=’16’,c=’20’

  普通三角形!

  Case47Case48Case49Case50Case51Case52Case53Case54Case55Case56Case57Case585

  Case59Case60执行路径:1-2-3-4-5-6-9-11-12请输入能构成三角执行路径:1-2-3-4-5-7-a=’2’,b=’100’,c=’2’

  形的整数。

  12请输入能构成三角执行路径:1-2-3-4-5-7-a=’150’,b=’20’,c=’30’

  形的整数。

  12请输入能构成三角执行路径:1-2-3-4-5-7-a=’2’,b=’2’,c=’-2’

  形的整数。

  12请输入能构成三角执行路径:1-2-3-4-5-7-a=’3’,b=’4’,c=’20’

  形的整数。

  12请输入能构成三角执行路径:1-2-3-4-5-7-a=’-3’,b=’3’,c=’3’

  形的整数。

  12请输入能构成三角执行路径:1-2-3-4-5-7-a=’5’,b=’-9’,c=’6’

  形的整数。

  12请输入能构成三角执行路径:1-2-3-4-5-7-a=’-1’,b=’-1’,c=’-1’

  形的整数。

  12执行路径:1-2-3-4-5-6-a=’22’,b=’22’,c=’22’

  等边三角形!

  8-12执行路径:1-2-3-4-5-6-a=’

  25’,b=’23’,c=’24’

  普通三角形!

  9-11-12执行路径:1-2-3-4-5-6-a=’12’,b=’12’,c=’13’

  等腰三角形!

  9-10-12执行路径:1-2-3-4-5-6-a=’6’,b=’12’,c=’12’

  等腰三角形!

  9-10-12执行路径:1-2-3-4-5-6-a=’2’,b=’1’,c=’2’

  等腰三角形!

  9-10-12

  路径覆盖

  输入

  期望输出

  覆盖对象

  请输入能构成三角a=’个’,b=’十’,c=’百’

  执行路径:1-2-3-7-12形的整数。

  请输入能构成三角a=’3.0’,b=’2.3’,c=’10’

  执行路径:1-2-3-4-7-12形的整数。

  测试结果

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  Case61a=’23’,b=’25’,c=’254’

  Case62a=’32’,b=’32’,c=’23’

  Case63a=’25’,b=’25’,c=’13’

  Case64a=’26’,b=’23’,c=’25’

  请输入能构成三角形的整数。

  等腰三角形!

  等腰三角形!

  普通三角形!

  执行路径:1-2-3-4-5-7-12执行路径:1-2-3-4-5-6-8-12执行路径:1-2-3-4-5-6-9-10-12执行路径:1-2-3-4-5-6-9-11-12请输入能构成三角形的整数。

  等腰三角形!

  等腰三角形!

  普通三角形!

  五、编写测试代码

  基本思路:将测试用例存入txt文件→读文件→判断→输出

篇五:白盒测试实训报告三角形

tle>白盒测试和黑盒测试实验报告-百度文库

  软件质量保证与测试

  实验指导

  计算机工程学院

  测试环境配置

  1.

  settingJunit(1)startEclipseSelectwindows-preferences-java-buildpath–classpathvariables(2)clicknew,thefigureofnewvariableentryisshown.(3)nameJUNIT_LIBselectfile-选择JUnit插件所对应的JAR文件所在地,在Eclipse的安装目录的plugins目录中

  2.

  JUNIT的组成框架

  其中,junit.framework和junit.runner是两个核心包。

  junit.framework负责整个测试对象的框架

  junit.runner负责测试驱动

  Junit的框架又可分为:

  A、被测试的对象。

  B、对测试目标进行测试的方法与过程集合,可称为测试用例(TestCase)。

  C、测试用例的集合,可容纳多个测试用例(TestCase),将其称作测试包(TestSuite)。

  D、测试结果的描述与记录。(TestResult)。

  E、每一个测试方法所发生的与预期不一致状况的描述,称其测试失败元素(TestFailure)F、JUnitFramework中的出错异常(AssertionFailedError)。

  JUnit框架是一个典型的Composite模式:TestSuite可以容纳任何派生自Test的对象;当调用TestSuite对象的run()方法是,会遍历自己容纳的对象,逐个调用它们的run()方法。

  3.

  JUnit中常用的接口和类

  Test接口——运行测试和收集测试结果

  Test接口使用了Composite设计模式,是单独测试用例(TestCase),聚合测试模式(TestSuite)及测试扩展(TestDecorator)的共同接口。

  它的publicintcountTestCases()方法,它来统计这次测试有多少个TestCase,另外一个方法就是publicvoid

  run(TestResult),TestResult是实例接受测试结果,run方法执行本次测试。

  TestCase抽象类——定义测试中固定方法

  TestCase是Test接口的抽象实现,(不能被实例化,只能被继承)其构造函数TestCase(stringname)根据输入的测试名称name创建一个测试实例。由于每一个TestCase在创建时都要有一个名称,若某测试失败了,便可识别出是哪个测试失败。

  TestCase类中包含的setUp()、tearDown()方法。setUp()方法集中初始化测试所需的所有变量和实例,并且在依次调用测试类中的每个测试方法之前再次执行setUp()方法。tearDown()方法则是在每个测试方法之后,释放测试程序方法中引用的变量和实例。

  开发人员编写测试用例时,只需继承TestCase,来完成run方法即可,然后JUnit获得测试用例,执行它的run方法,把测试结果记录在TestResult之中。

  Assert静态类——一系列断言方法的集合

  Assert包含了一组静态的测试方法,用于期望值和实际值比对是否正确,即测试失败,Assert类就会抛出一个AssertionFailedError异常,JUnit测试框架将这种错误归入Failes并加以记录,同时标志为未通过测试。如果该类方法中指定一个String类型的传参则该参数将被做为AssertionFailedError异常的标识信息,告诉测试人员改异常的详细信息。

  JUnit提供了6大类31组断言方法,包括基础断言、数字断言、字符断言、布尔断言、对象断言。

  其中assertEquals(Objectexpcted,Objectactual)内部逻辑判断使用equals()方法,这表明断言两个实例的内部哈希值是否相等时,最好使用该方法对相应类实例的值进行比较。而assertSame(Objectexpected,Objectactual)内部逻辑判断使用了Java运算符“==”,这表明该断言判断两个实例是否来自于同一个引用(Reference),最好使用该方法对不同类的实例的值进行比对。

  asserEquals(Stringmessage,Stringexpected,Stringactual)该方法对两个字符串进行逻辑比对,如果不匹配则显示着两个字符串有差异的地方。ComparisonFailure类提供两个字符串的比对,不匹配则给出详细的差异字符。

  TestSuite测试包类——多个测试的组合

  TestSuite类负责组装多个TestCases。待测得类中可能包括了对被测类的多个测试,而TestSuit负责收集这些测试,使我们可以在一个测试中,完成全部的对被测类的多个测试。

  TestSuite类实现了Test接口,且可以包含其它的TestSuites。它可以处理加入Test时的所有抛出的异常。

  TestSuite处理测试用例有6个规约(否则会被拒绝执行测试)

  A测试用例必须是公有类(Public)

  B测试用例必须继承与TestCase类

  C测试用例的测试方法必须是公有的(Public)

  D测试用例的测试方法必须被声明为VoidE测试用例中测试方法的前置名词必须是testF测试用例中测试方法无任何传递参数

  TestResult结果类和其它类与接口

  TestResult结果类集合了任意测试累加结果,通过TestResult实例传递每个测试的Run()方法。TestResult在执行TestCase时如果失败会异常抛出

  TestListener接口是个事件监听规约,可供TestRunner类使用。它通知listener的对象相关事件,方法包括测试开始startTest(Testtest),测试结束endTest(Testtest),错误,增加异常addError(Testtest,Throwablet)和增加失败addFailure(Testtest,AssertionFailedErrort)TestFailure失败类是个“失败”状况的收集类,解释每次测试执行过程中出现的异常情况。其toString()方法返回“失败”状况的简要描述

  4.

  利用Junit开发一个简单的Java程序

  (1)File-new-Javaproject,名称为“HelloWorldWithJUnit”

  建立两个文件夹,分别为src和junittestsrc存放实现主要功能的文件

  junittest存放测试功能文件

  (2)创建测试类

  选中“HelloWorldWithJUnit”项目中的junittest包文件夹,右键并选择new-other-Junit-JunitTestCase(3)选择“next”,在NewJunitTestCase中的name中输入“HelloWorldTest”,在package中输入“junittest”,然后单击“finish”。

  (4)现在初步计划被测试文件功能非常简单,只有一个方法ReturnValue,作用是返回“HelloWorld”,所以测试类中有对ReturnValue这个方法进行测试的类。当然,测试要能进行,该测试类必须为主类,存在main方法。HelloWorldTest.java的源代码如下:

  选择run-runas-Junittest弹出一个Junit窗口,发现在该窗口中有一个红条,这说明存在错误。

  (5)创建HelloWorld类

  建立一个HelloWorld类,并输入以下代码:

  (6)在HelloWorldTest.java中加入importsrc.*;此时以Junit测试的方式来运行HelloWorldTest.java,出现了含有绿色的窗口,测试成功。

  assertEqualspublicstaticvoidassertEquals([Assertsthattwoobjectsareequal.Iftheyarenot,anAssertionErroristhrownwiththegivenmessage.Ifexpectedandactualarenull,theyareconsideredequal.Parameters:

  message-theidentifyingmessagefortheAssertionError(nullokay)expected-expectedvalueactual-actualvalueassertFalsepublicstaticvoidassertFalse

  boolean?condition)Assertsthataconditionisfalse.Ifitisn"titthrowsanAssertionErrorwiththegivenmessage.Parameters:

  message-theidentifyingmessagefortheAssertionError(nullokay)condition-conditiontobecheckedassertTruepublicstaticvoidassertTrue

  boolean?condition)Assertsthataconditionistrue.Ifitisn"titthrowsanAssertionErrorwiththegivenmessage.Parameters:

  message-theidentifyingmessagefortheAssertionError(nullokay)condition-conditiontobechecked

  assertNullpublicstaticvoidassertNull

  Assertsthatanobjectisnull.Ifitisnot,anAssertionErroristhrownwiththegivenmessage.Parameters:

  message-theidentifyingmessagefortheAssertionError(nullokay)object-Objecttocheckornull

  assertNotNullpublicstaticvoidassertNotNull

  Assertsthatanobjectisn"tnull.IfitisanAssertionErroristhrownwiththegivenmessage.Parameters:

  message-theidentifyingmessagefortheAssertionError(nullokay)object-Objecttocheckornull

  assertSamepublicstaticvoidassertSame([],Assertsthattwoobjectsrefertothesameobject.Iftheyarenot,anAssertionErroristhrownwiththegivenmessage.Parameters:

  message-theidentifyingmessagefortheAssertionError(nullokay)expected-theexpectedobjectactual-theobjecttocomparetoexpected

  assertNotSamepublicstaticvoidassertNotSame

  Assertsthattwoobjectsdonotrefertothesameobject.Iftheydorefertothesameobject,anAssertionErroristhrownwiththegivenmessage.Parameters:

  message-theidentifyingmessagefortheAssertionError(nullokay)unexpected-theobjectyoudon"texpectactual-theobjecttocomparetounexpected

  failpublicstaticvoidfail

  Failsatestwiththegivenmessage.Parameters:

  message-theidentifyingmessagefortheAssertionError(nullokay)SeeAlso:

  AssertionError

  实验一白盒测试方法

  一、实验目的

  1、掌握白盒测试基本技术,并能够应用白盒测试技术设计测试用例

  2、掌握白盒测试中的逻辑覆盖和路径测试方法

  二、实验任务

  使用白盒测试方法为下面的程序设计测试用例(使用逻辑覆盖和路径测试方法):

  程序要求:10个铅球中有一个假球(比其他铅球的重量要轻),用天平三次称出假球。

  程序设计思路:第一次使用天平分别称5个球,判断轻的一边有假球;拿出轻的5个球,取出其中4个第二次称,两边分别放2个球:如果两边同重,则剩下的球为假球;若两边不同重,拿出轻的两个球称第三次,轻的为假球。

  图1判断假球的程序流程图

  三、实验要求

  1、做好实验预习,掌握并熟悉本实验中所使用的测试环境及相应的测试软件

  2、写出实验报告,内容是:

  (1)实验目的

  (2)实验内容实验源代码(或测试脚本)可不写出,但是一定要写出实验中出现的错误,以及解决错误的方法

  (3)出错信息及处理方法

  (4)实验结果,包括实验处理结果和设计心得。

  单元测试覆盖率-使用CloverClover是对单元测试覆盖率进行统计的软件,在Eclipse中使用Clover,首先使用从下载Clover,还需要申请一个license,否则无法使用。目前免费下载的基本都是30天试用版。

  下载后把Clover压缩包里的两个文件夹,features和plugins,复制到Eclipse安装目录中替换原来的两个文件夹。

  1.打开Eclipse,从Window->Showview->other,可以看到Clover的信息:

  ?2.还需要导入clover.license。从Preferences->Clover->License进入:

  并将申请到的的license粘帖到这里,至此Clover已经安装完成,开始进入单元测试。

  3.可以对之前已经做过的project进行覆盖率的计算。也可新建了一个project,结构如下:

  Sample.java和SampleTest.java内容分别是:

  Java代码

  1.

  package??2.

  ??

  3.

  public?class?Sample?{??4.

  ????public?Integer?add(Integer?a,?Integer?b)?{??5.

  ????????if?(a?==?null?||?b?==?null)?{??6.

  ????????????return?null;??7.

  ????????}??8.

  ????????Integer?sum?=?new?Integer(a.intValue()?+?b.intValue());??9.

  ????????return?sum;??10.

  ????}??11.

  }??Java代码

  1.

  package??2.

  ??3.

  import??4.

  import??5.

  ??6.

  public?class?SampleTest?extends?TestCase?{??7.

  ??8.

  ????protected?void?setUp()?throws?Exception?{??9.

  ????????super.setUp();??10.

  ????}??11.

  ??12.

  ????public?void?testAdd()?{??13.

  ????????Sample?sample?=?new?Sample();??14.

  ????????Integer?a?=?new?Integer(1);??15.

  ????????Integer?b?=?new?Integer(2);??16.

  ????????Integer?c?=?sample.add(a,?b);??17.

  ????????assertNotNull(c);??18.

  ????}??19.

  ??20.

  ????protected?void?tearDown()?throws?Exception?{??21.

  ????????super.tearDown();??22.

  ????}??23.

  ??24.

  }???右击JunitInAction工程,选择Properties->Clover。上面有一个EnableCloverinthisproject,勾上,apply->OK.从Window->Showview->other进入,找到CoverageExplorer,打开,看到Clover选项的相关信息:

  点击红框内的按钮,会弹出重新构建工程的提示,点击"是"即可。

  在CoverageExplorer界面下,我们会看到:

  右击SampleTest.java,选择Runas->JUnitTest,结果如下:

  可以看到Sample.java的覆盖率为71.4%.Clover还可以生成三种测试报告:PDF/HTML/XML。按钮可以在CoverageExplorer那排的选项按钮里找到(runnewreport)。

  实验二黑盒测试

  一、实验目的

  1、掌握黑盒测试基本技术,并能够应用黑盒测试方法设计测试用例

  2、熟悉黑盒测试中的等价类测试方法和边界值测试方法。

  二、实验任务

  使用等价类方法设计下面程序的设计用例:

  输入三个整数作为边,分别满足一般三角形、等腰三角形和等边三角形。

  三、实验内容和步骤

  1、使用等价类划分法设计下面的测试用例:

  (1)源程序

  packagep1;

  importjava.io.*;

  publicclassJTriangle{

  ????privateintb,c,a;

  ????privatestaticintx1,x2,x3;

  ????privatestaticStrings1,s2,s3;

  ???publicvoidsetA(inta){

  ????????this.a=a;}

  ???publicvoidsetB(intb){

  ????????this.b=b;}

  ???publicvoidsetC(intc){

  ????????this.c=c;}

  ???publicbooleanIsTriangle(){

  ????????if(a+b>c&&a+c>b&&b+c>a&&a!=0&&b!=0&&c!=0)

  ????????????returntrue;

  ????????else

  ????????????returnfalse;

  ????}

  publicJTriangle(){

  ????}

  ????publicJTriangle(int_a,int_b,int_c){

  ???????setA(_a);

  ???????setB(_b);

  ???????setC(_c);

  ????}

  ????publicStringJudgeTriangle()

  ????{

  ????????if(IsTriangle())

  ????{

  ????????????????if(a==b&&a==c)

  ????????????????{

  ????????????????????return"等边三角形";????????????????}

  ????????????????elseif(a==b||b==c||a==c){

  ????????????????????return"等腰三角形";

  ????????????????}

  ????????????????else

  ????????????????{

  ????????????????????return"一般三角形";

  ????????????????}

  ????}

  ????????else

  ????????return"不能组成三角形";

  }

  ????publicbooleanISNumble(Strings)

  ????{

  ????????if(s.length()==0){

  ????????returnfalse;

  ????}

  ????else{

  ????????charch[]=s.toCharArray();

  ????????for(inti=0;i

  ????????{

  ????????????if(ch[i]>="0"&&ch[i]<="9")

  ????????????????continue;

  ????????????else

  ????????????????returnfalse;

  ????????}

  ????????returntrue;

  ????}

  ????}

  ????publicvoidSetTriangle(){

  ????????try

  ????????{

  ????????BufferedReaderin=newBufferedReader(newInputStreamReader(System.in));

  ????????System.out.println("请输入三角形的三边:");

  ????????System.out.println("a=");

  ????????s1=in.readLine();

  ????????while(!ISNumble(s1)){

  ????????????System.out.println("你输入的不是个数字");

  ????????????System.out.println("a=");

  ????????????s1=in.readLine();

  ????????}

  ????System.out.println("b=");

  ????????s2=in.readLine();

  ????????while(!ISNumble(s2)){

  ????????????System.out.println("你输入的不是个数字");

  ????????????System.out.println("b=");

  ????????????s2=in.readLine();

  ????????}

  ????System.out.println("c=");

  ????????s3=in.readLine();

  ????????while(!ISNumble(s3)){

  ????????????System.out.println("你输入的不是个数字");

  ????????????System.out.println("C=");

  ????????????s3=in.readLine();

  ????????}

  ?????????}

  ????????catch(IOExceptione)

  ????????{}

  ????????x1=Integer.parseInt(s1);

  ????????x2=Integer.parseInt(s2);

  ????????x3=Integer.parseInt(s3);

  ???????setA(x1);

  ???????setB(x2);

  ???????setC(x3);

  ????}

  publicstaticvoidmain(Stringargs[])

  ????{????JTriangletr=newJTriangle();

  ????tr.SetTriangle();

  ????System.out.print(tr.JudgeTriangle());

  ?????}

  }

  (2)测试用例设计

  四、实验要求

  1、做好实验预习,写出使用边界值方法设计的测试用例,掌握并熟悉本实验中所使用的测试环境及相应的测试软件

  2、写出实验报告,内容是:

  (1)实验目的

  (2)实验内容实验源代码(或测试脚本)可不写出,但是一定要写出实验中出现的错误,以及解决错误的方法

  (3)出错信息及处理方法

  (4)实验结果,包括实验处理结果和设计心得。

篇六:白盒测试实训报告三角形

tle>白盒测试实验报告_三角形(2)-百度文库

  白盒测试实验报告

  、实验目的

  三角形

  (1)

  巩固白盒测试技术,能熟练应用控制流覆盖方法设计测试用例;(2)

  学习测试用例的书写。

  、实验内容

  判断三角形类型

  输入三个整数a、b、c,三分别作为三角形的三条边,通过程序判断这三条边是否能构成

  则判断三角角形?如果能构成三角形,要求形的类型(等边三角形、等腰三角形、一般三角形)。

  输入三个整数

  a、b、c,必须满足以下条件:

  Kai00;Kbw200Kc<200要求:

  为测试该程序的方便,请将三角形判断的算法尽量放入一个函数中。

  (1)

  画出程序的流图;(2)分别以语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖设计测试

  用例,并写出每个测试用例的执行路径

  要求:设计测试用例时,每种覆盖方法的覆盖率应尽可能达到

  100%(3)请采用基本路径测试方法对程序进行测试,并给出具体测试用例信息。

  (4)通过你的测试,请总结你所使用测试方法发现的

  Bug。

  、实验要求

  根据题目要求编写测试用例

  撰写实验报告

  有关的实现程序请附到实验报告中

  实验报告命名规则:学号后两位

  +姓名白盒实验

  四、实验报告

  (1)程序代码:

  1.

  importjava.io.*;

  publicclasssanjiaoxing

  {

  privatestaticintx;

  privatestaticinty;

  privatestaticintz;

  2.

  public

  staticvoidmain(Stringarg[]){

  {

  intv=0;

  System.out.println("请输入三角形第一条边的长!

  ");

  x=getside(v);

  System.out.println("请输入三角形第二条边的长!

  ");

  y=getside(v);

  System.out.println("请输入三角形第三条边的长!

  ");

  z=getside(v);

  ifzhijiaotriangle();

  }

  3.

  publicstaticintgetside(intv)

  {

  BufferedReaderinput=newnew

  InputStreamReader(System.try{v=lnteger.parse

  BufferedReader(in

  Int(input.readLine());));

  }catch(IOExceptione){}returnv;

  publicstaticvoidifzhijiaotriangle()

  {

  if((x>0&&x<200)&&(y>0&&y<200)&&(z>0&&z<200))

  {

  if(x+yv=z||x+z<=y||z+y<=x)

  {

  6.System.out.println("您输入的三边不能构成三角形

  “);

  }

  7.else{System.out.println(”一般三角形

  ”);

  }

  8.elseif(x==y||x==z||y==z){if(x==y&&y==z)10.System.out.println(12.elseSystem.out.println("您输入的三角形是等边三角形

  “);

  “);

  "您输入的三角形是等腰三角形

  11.else{System.out.pnntln(}}}"超岀");

  (2)程序的流图:

  "、ab-41,2,3i

  」-

  11

  eg67h

  j8

  、厂i

  109Id

  m-—.

  "i

  12T

  i

  I

  .A-I

  V

  13—

  预输出结果

  超出

  不能构成三角形

  等腰三角形

  等边三角形

  一般三角形

  (3)

  语句覆盖;编号

  1234

  测试用例

  (0,10,20)(10,20,35)(3,3,5)执行路径

  a,c,da,b,e,fa,b,g,j,k,la,b,g,j,m,na,b,g,h,i覆盖语句

  1,2,3,4,11,131,2,3,4,5,6,131,2,3,4,5,7,9,10,131,2,3,4,5,7,9,12,131,2,3,4,5,7,8,13(3,3,3)(10,20,25)5(4)判定覆盖;编号

  12

  测试用例

  (0,10,20)(10,20,35)(10,20,25)

  执行路径

  a,c,da,b,e,fa,b,g,h,i覆盖判定

  F1T1,F2T1,T2,F3预输出结果

  超出

  不能构成三角形

  一般三角形

  4(3,3,5)a,b,g,j,k,la,b,g,j,m,nT1,T2,T3,F4T1,T2,T3,T4等腰三角形

  等边三角形

  (3,3,3)5

  (5)条件覆盖:

  条件

  a>=1&&a<=200b>=1&&b<=200c>=1&&c<=200a+b>ca+c>bb+c>aa==bb==c

  符号

  1T2T3T4T5T6T7T8T9Ta==c编号

  测试用例

  执行路径

  覆盖条件

  预输出结果

  12(0,10,20)(10,20,35)a,c,da,b,e,f-1T,2T,3T1T,2T,3T,-4T,5T,6T超出

  不是三角形

  3(10,35,20)a,b,e,f仃,2T,3T,4T,-5T,6T不是三角形

  4(35,10,20)a,b,e,f1T,2T,3T,4T,5T,-6T1T,2T,3T,4T,5T,6T,-7T,-8T,-9T不是三角形

  5(10,20,25)a,b,g,h,i一般三角形

  仃,2T,3T,4T,6(3,3,3)a,b,g,j,m,n5T,6T,7T,8T,9T等边三角形

  (3,3,5)a,b,g,j,k,l1T,2T,3T,4T,5T,6T,7T,-8T,-9T等腰三角形

  (6)判定/条件覆盖;编号

  1测试用例

  (0,10,20)执行路径

  a,c,d覆盖条件

  -1T,2T,3T覆盖判定

  F1预输出结果

  超出

  2(10,20,35)a,b,e,f1T,2T,3T,-4T,5T,6TT1,F2不能构成三角形

  3(10,35,20)a,b,e,f1T,2T,3T,4T,-5T,6TT1,F2不能构成三角形

  4(35,10,20)a,b,e,f1T,2T,3T,4T,5T,-6T1T,2T,3T,4T,5T,6T,-7T,-8T,-9TT1,F2不能构成三角形

  5(10,20,25)a,b,g,h,iT1,T2,F3一般三角形

  6(3,3,3)a,b,g,j,m,n1T,2T,3T,4T,5T,6T,7T,8T,9T1T,2T,3T,4T,T1,T2,T3,T4等边三角形

  7(3,3,5)a,b,g,j,k,l5T,6T,7T,-8T,-9TT1,T2,T3,F4等腰三角形

  (7)组合覆盖;编号

  测试用例

  执行

  路径

  覆盖条件

  预输出结果

  12345678(0,201,201)a,c,da,c,da,c,da,c,da,c,da,c,da,c,da,b,e,f-1T,-2T,-3T-1T,-1T,3T-1T,2T,-3T1T,-2T,-3T1T,2T,-3T1T,-2T,3T-1T,2T,-3T1T,2T,3T,-4T,5T,6T超出

  超出

  超出

  超出

  超出

  超出

  超出

  不能构成三

  角形

  不能构成三

  角形

  (201,201,1)(201,2,201)(2,201,202)(1,2,201)(1,201,2)(201,1,2)(10,20,35)9(10,35,20)a,b,e,f1T,2T,3T,4T,-5T,6T

  10(35,10,20)a,b,e,f1T,2T,3T,4T,5T,-6T不能构成三

  角形

  11(3,4,5)a,b,g,h,i1T,2T,3T,4T,5T,6T,-7T,-8T,-9T一般三角形

  12(3,3,5)a,b,g,j,k,l1T,2T,3T,4T,5T,6T,7T,-8T,-9T等腰三角形

  13(5,3,3)a,b,g,j,k,l1T,2T,3T,4T,5T,6T,-7T,8T,-9T等腰三角形

  14(3,5,3)a,b,g,j,k,l1T,2T,3T,4T,5T,6T,-7T,-8T,9T等腰三角形

  15(3,3,3)1T,2T,3T,a,b,g,j,4T,5T,6T,m,n7T,8T,9T等边三角形

  (8)基本路径覆盖;

  经过计算,程序流图的环复杂度为

  编号

  1234

  5,因此基本路径有

  5条

  测试用例

  (10,20,35)(3,4,5)(3,3,5)(3,3,3)(0,201,201)基本路径

  a,b,c,fa,b,g,h,ia,b,g,j,k,la,b,g,j,m,na,c,d预输出结果

  不能构成三角形

  一般三角形

  等腰三角形

  等边三角形

  超出

  5附录:测试用例书写格式(语句覆盖为例)测试用例表

  编号

  测试用例

  执行路径

  覆盖条件

  覆盖语句

  预输出结果

  (0,10,20)

篇七:白盒测试实训报告三角形

tle>三角形程序白盒测试-百度文库

  三角形判断问题白盒测试

  问题描述

  针对三角形的形状判定程序设计测试用例,进行白盒测试。假定这里构成三角形的边取值只能为整数。

  程序判定的类型f输入数据不是數字

  有:

  1.箱入不能构成整数边的三角形输入不为整数

  |2.等边三角形|

  3.等讓三角形

  £普通三角形

  {输入数据不能构成三角形

  二、实验目的

  (1)掌握白盒测试的原理;

  (2)掌握使用逻辑覆盖和基路径测试等设计测试用例的方法;

  (3)掌握单元测试的方法步骤;

  (4)掌握控制流图的画法和通过控制流图找出基路径的方法。

  三、实验环境

  平台:win1064位

  环境:Eclipse(neon版本)

  四、实验过程

  (一)编写判定三角形类别的程序:

  核心代码:

  publicstaticintDefiniteShape(inta,intb,intc){if((a+b>c)&&(b+c>a)&&(a+c>b)){//判断可以构成三角形

  if((b==c)&&(a==b)){return1;//等边三角形

  }if((a==b)||(b==c)||(c==a)){return2;//等腰三角形

  }return3;//普通三角形

  }return0;//非三角形

  }主函数调用代码:

  shape=DefiniteShape(a,b,c);if(shape==0){

  System.out.println(}elseif(shape==1){输入数据不能构成三角形!

  );

  System.out.println(}

  elseif(shape==2){

  System.out.println(}

  elseif(shape==3){

  System.out.println(}

  (

  二

  )画出程序流程图:

  等边三角形!

  ");

  等腰三角形!

  ");

  普通三角形!

  ");

  提示等边三角

  形

  (三)画出控制流图:提示等腰三角

  形输入a,b,c断a,b,c是否

  都为数字

  是

  是否都为

  整数

  是

  a+b>c&&b+c>a&&a+c>b是

  a==b&&b==c否

  =c

  提示

  普

  彗通三角

  形

  提示请输入能构

  成三角形的整数

  10四)逻辑覆盖测试:条件有:

  12

  11

  (1)

  a为数

  b为数2)

  字字

  c为数3)

  字

  a为整4)

  数

  b为整5)

  数

  6)

  c为整数

  7)

  a+b>c

  8)

  b+c>a

  9)

  10)

  11)

  12)

  a+c>b

  a==b

  b==c

  a==c

  所有测试用例(覆盖率达到

  100%)

  测试结果

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  等边三角形!

  普通三角形!

  语句覆盖

  输入

  期望输出

  覆盖对象

  执行路径:1-2-3-7-12

  执行路径:

  1-2-3-4-5-6-9-10-12

  执行路径:

  1-2-3-4-5-6-8-12

  执行路径:

  1-2-3-4-5-6-9-11-12

  判定覆盖

  输入

  a="字’,b="0",c="0"a="3",b="2.3",c="3.3"a="6",b="3",c="2"a="12",b="12",c="期望输出

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  等边三角形!

  等腰三角形!

  普通三角形!

  执行路径:1-2-3-4-7-12

  执行路径:1-2-3-4-5-7-12

  执行路径:

  1-2-3-4-5-6-8-12

  执行路径:

  1-2-3-4-5-6-9-10-12

  执行路径:

  1-2-3-4-5-6-9-11-12

  条件覆盖

  输入

  期望输出

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  满足:F1,T2,T3

  覆盖对象

  满足:T1,F2,F3

  测试结果

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  覆盖对象

  执行路径:1-2-3-7-12

  测试结果

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  等边三角形!

  等腰三角形!

  普通三角形!

  Case1

  Case2

  Case3

  Case4

  a="三",b="角",c="形,请输入能构成三角

  形的整数。

  a="5",b="2",c="2"a="2",b="2",c="2"a="3",b="4",c="5"请输入能构成三角

  形的整数。

  等边三角形!

  普通三角形!

  Case5

  Case6

  Case7

  Case8

  Case9

  Case10

  12"a="24",b="13",c="13"a="15",b="20",c="25"Case11

  Case12

  a="汉’,b="2",c="3"a="6",b="d",c="字"

  Case13

  Case14

  Case15

  Case16

  Case17

  Case18

  Case19

  a="5.3",b="3.0",c="请输入能构成三角

  形2.3"a="6",b="2.3",c="3

  a="2",b="3",c="5"的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  的整数。

  满足:F4,T5,F6

  满足:T4,F5,T6

  满足:F7,T8.T9

  满足:T7,F8,T9

  满足:T7,T8,F9

  满足:T10,T11,T12

  满足:F10,F11,F12

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  等边三角形!

  普通三角形!

  a="10",b="-3",c="6"请输入能构成三角

  形a="3",b="8",c="4"a="3",b="3",c="3"a="25",b="26",c="27"输入

  请输入能构成三角

  形的整数。

  等边三角形!

  普通三角形!

  判定-条件覆盖

  期望输出

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  的整数。

  覆盖对象

  执行路径:1-2-3-7-12

  执行路径:

  测试结果

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  等边三角形!

  普通三角形!

  等腰三角形!

  等腰三角形!

  等腰三角形!

  Case20

  Case21

  Case22

  Case23

  Case24

  Case25

  Case26

  Case27

  Case28

  Case29

  a="a",b="b",c="c"a="1",b="2",c="3"1-2-3-4-5-7-12

  执行路径:

  a="15",b="2",c="5"请输入能构成三角

  形a="21",b="100",c="22"2.3"a="12",b="12",c="12"a="25",b="51",c="50"a="12",b="21",c="21"a="25",b="25",c="22"a="3",b="23",c="23"输入

  请输入能构成三角

  形的整数。

  的整数。

  等边三角形!

  普通三角形!

  等腰三角形!

  等腰三角形!

  等腰三角形!

  1-2-3-4-5-7-12

  执行路径:

  1-2-3-4-5-7-12

  执行路径:1-2-3-4-7-12

  执行路径:

  a="3.2",b="2.3",c="请输入能构成三角

  形1-2-3-4-5-6-8-12

  执行路径:

  1-2-3-4-5-6-9-11-12

  执行路径:

  1-2-3-4-5-6-9-10-12

  执行路径:

  1-2-3-4-5-6-9-10-12

  执行路径:

  1-2-3-4-5-6-9-10-12

  条件组合覆盖

  覆盖对象

  执行路径:

  期望输出

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  测试结果

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  Case30

  a="1",b="2",c="3"Case31

  a="2",b="3",c="a"Case32

  a="3",b="x",c="3"

  1-2-3-4-5-7-12

  执行路径:1-2-3-7-12

  执行路径:1-2-3-7-12

  Case33

  a="5",b="s",c="d"Case34

  a="f",b="3",c="3"Case35

  a="g",b="6",c="h"Case36

  Case37

  Case38

  Case39

  Case40

  a="h",b="发,c="52"请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  执行路径:1-2-3-7-12

  执行路径:1-2-3-7-12

  执行路径:1-2-3-7-12

  执行路径:1-2-3-7-12

  执行路径:1-2-3-7-12

  执行路径:

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  普通三角形!

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  等边三角形!

  a="都都",b="是’,c="请输入能构成三角

  形字,a="3",b="3",c="223"a="3",b="9",c="52.3"a="6",b="2.3",c="23"1-2-3-4-5-7-12

  执行路径:1-2-3-4-7-12

  执行路径:1-2-3-4-7-12

  执行路径:1-2-3-4-7-12

  执行路径:1-2-3-4-7-12

  执行路径:1-2-3-4-7-12

  执行路径:1-2-3-4-7-12

  执行路径:1-2-3-4-7-12

  执行路径:

  a="12",b="3.5",c="请输入能构成三角

  形Case41

  3.6"的整数。

  Case42

  Case43

  Case44

  Case45

  Case46

  Case47

  a="6.3",b="31",c="请输入能构成三角

  3.3"a="6.3",b="336",c="6"a="2.3",b="1.3",c="2.3"a="3.6",b="3.2",c="6"a="12",b="16",c="20"a="2",b="100",c="2"形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  普通三角形!

  请输入能构成三角

  形的整数。

  1-2-3-4-5-6-9-11-12

  执行路径:

  1-2-3-4-5-7-12

  执行路径:

  a="150",b="20",c="请输入能构成三角

  Case48

  30"形的整数。

  1-2-3-4-5-7-12

  执行路径:

  Case49

  Case50

  Case51

  Case52

  Case53

  Case54

  a="2",b="2",c="-2"a="3",b="4",c="20"a="-3",b="3",c="3"a="5",b="-9",c="6"a="-1",b="-1",c="-1"a="22",b="22",c="22"请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  等边三角形!

  1-2-3-4-5-7-12

  执行路径:

  1-2-3-4-5-7-12

  执行路径:

  1-2-3-4-5-7-12

  执行路径:

  1-2-3-4-5-7-12

  执行路径:

  1-2-3-4-5-7-12

  执行路径:

  1-2-3-4-5-6-8-12

  a="25",b="23",c="执行路径:

  普通三角形!

  等腰二角形!

  等腰三角形!

  等腰三角形!

  1-2-3-4-5-6-9-11-12

  执行路径:

  普通三角形!

  等腰三角形!

  等腰三角形!

  等腰三角形!

  Case55

  Case56

  Case57

  24"a="12",b="12",c="13"a="6",b="12",c="12"1-2-3-4-5-6-9-10-12

  执行路径:

  1-2-3-4-5-6-9-10-12

  执行路径:

  Case58

  a="2",b="1",c="2"5

  1-2-3-4-5-6-9-10-12

  路径覆盖

  覆盖对象

  执行路径:1-2-3-7-12

  执行路径:1-2-3-4-7-12

  执行路径:

  输入

  期望输出

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  等腰三角形!

  等腰三角形!

  普通三角形!

  测试结果

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  请输入能构成三角

  形的整数。

  等腰三角形!

  等腰三角形!

  普通三角形!

  Case59

  Case60

  Case61

  Case62

  Case63

  Case64

  五、a="个’,b="十’,c="百’

  a="3.0",b="2.3",c="10"a="23",b="25",c="254"a="32",b="32",c=""

  23"a="25",b="25",c="13"a="26",b="23",c="25"tx1-2-3-4-5-7-12

  执行路径:

  1-2-3-4-5-6-8-12

  执行路径:

  1-2-3-4-5-6-9-10-12

  执行路径:

  1-2-3-4-5-6-9-11-12

  编写测试代码

  t文件基本思路:将测试用例存入

  T读文件T判断T输出

  (注:文档可能无法思考全面,请浏览后下载,供参考。可复制、编制,期待你的好评与关注)

篇八:白盒测试实训报告三角形

tle>实验1-白盒测试实验报告-百度文库

  .

  .

  .

  .

  第一章白盒测试

  实验1语句覆盖

  [实验目的]1、掌握测试用例的设计要素和关键组成部分。

  2、掌握语句覆盖标准,应用语句覆盖设计测试用例。

  3、掌握语句覆盖测试的优点和缺点。

  [实验原理]设计足够多的测试用例,使得程序中的每个语句至少执行一次。

  [实验容]根据下面提供的程序,设计满足语句覆盖的测试用例。

  1、程序1源代码如下所示:

  #includevoidmain(){intb;intc;inta;if(a*b*c!=0&&(a+b>c&&b+c>a&&a+c>b)){if(a==b&&b==c)

  {

  cout<<"您输入的是等边三角形!";

  }

  elseif((a+b>c&&a==b)||(b+c>a&&b==c)||(a+c>b&&a==c))

  {

  cout<<"您输入的是等腰三角形!";

  }

  elseif((a*a+b*b==c*c)||(b*b+c*c==a*a)||(a*a+c*c==b*b))

  {

  cout<<您输入的是直角三角形";

  }else{

  cout<<”普通三角形”;

  1/6

  .

  .

  .

  .

  }}else{cout<<"您输入的不能构成一个三角形!";}}

  输入数据A=6,b=7,c=8A=3,b=4,c=5A=4,b=2,c=4A=1,b=1,c=1A=20,b=10,c=1

  2、程序2源代码如下所示:

  voidDoWork(intx,inty,intz){intk=0,j=0;if((x>3)&&(z<10)){k=x*y-1;//语句块1j=sqrt(k);}if((x==4)||(y>5)){j=x*y+10;//语句块2}j=j%3;//语句块3}

  预期输出普通三角形直角三角形等腰三角形等边三角形非三角形

  输入数据x=6z=3x=4y=6x=6z=3x=3y=5x=6z=11x=4y=8x=6z=3x=2y=43、程序3源代码如下所示:

  预期输出k=35j=34k=29j=25k=0j=42k=23j=0

  2/6

  .

  .

  .

  .

  intlogicExample(intx,inty){

  intmagic=0;

  if(x>0&&y>0)

  {

  magic=x+y+10;//语句块1

  }

  else

  {

  magic=x+y-10;//语句块2

  }

  if(magic<0)

  {

  magic=0;

  //语句块3

  }

  returnmagic;

  //语句块4}输入数据x440100-1

  4、程序4源代码如下所示:

  y404-5-1预期输出magic1800850

  #include#include#includestructBorrower{intid,books;}borrowers[100];voidmain(){intborrowerid,a=0,bookid;boolflag=true;borrowers[1].id=1101;borrowers[2].id=1102;borrowers[3].id=1103;borrowers[4].id=1104;borrowers[1].books=2;borrowers[2].books=4;borrowers[3].books=1;borrowers[4].books=3;printf("***********借阅图书**********\n\n");3/6

  .

  .

  .

  .

  while(flag){printf("请输入借书证号:");scanf("%d",&borrowerid);for(inti=0;i<10;i++){if(borrowers[i].id==borrowerid)

  {a=i;flag=false;break;}}if(a==0)printf("\n您的借书证号出错.\n");if(borrowers[a].books==4){printf("\n您已达最大借书量.\n");flag=true;}}printf("请输入图书编号:");scanf("%d",&bookid);printf("借书成功!!\n");printf("借书证号图书编号剩余借书量\n");

  printf("%d%d%d\n",borrowers[a].id,bookid,borrowers[a].books-1);}

  4/6

  .

  .

  .

  .

  缺陷:1.当输入借书证号为非数值型时程序会陷入死循环

  2.当输入图书编号为非数值型时程序会异常退出

  5、程序5源代码如下所示:

  #includeintSearch(intsomearray[],intsize,intvalue){for(inti=1;i<=size;i++){if(sonearray[i]==value)

  returni;}return-1;}voidmain(){intsize=6;intvalue;

  intarray[size]={5,8,-56,235,-65,449};do{printf(“请输入一个整数:”);

  scanf(“%d”,&value);

  }while(int(value)!=value);if(int(value)==value)Search(array,size+1,value);}

  5/6

  .

  .

  .

  .

  程序存在错误:

  修改错误后程序依然无法输出,定义value直接退出程序

  [实验要求]1、实验前认真听讲,服从安排,独立思考并与小组成员合作完成实验。

  2、撰写实验报告。

  3、提交文件统一压缩(命名:+实验项目名称,如三_语句覆盖.zip)。

  实验心得

  通过本次实验掌握测试用例的设计要素和关键组成部分,也掌握语句覆盖标准,应用语句覆盖设计测试用例和语句覆盖测试的优点和缺点,了解了白盒测试的基本过程,并能独立查找解决程序中的错误,本次实验受益良多。

  6/6

篇九:白盒测试实训报告三角形

tle>三角形程序白盒测试-百度文库

  三角形判断问题白盒测试

  一、问题描述

  针对三角形的形状判定程序设计测试用例,进行白盒测试。假定这里构成三角形的边取值只能为整数。

  程序判定的类型有:

  输入数据不是数字

  1、输入不能构成整数边的三角形{输入不为整数

  输入数据不能构成三角形2、等边三角形

  3、等腰三角形

  4、普通三角形

  二、实验目的

  (1)掌握白盒测试的原理;

  (2)掌握使用逻辑覆盖和基路径测试等设计测试用例的方法;

  (3)掌握单元测试的方法步骤;

  (4)掌握控制流图的画法和通过控制流图找出基路径的方法。

  三、实验环境

  平台:win1064位

  环境:Eclipse(neon版本)

  四、实验过程

  (一)编写判定三角形类别的程序:核心代码:

  public

  static

  intDefiniteShape(int

  a,int

  b,int

  c){

  if((a+b>c)&&(b+c>a)&&(a+c>b)){//判断可以构成三角形

  }return0;//非三角形

  }if((b==c)&&(a==b)){

  }if((a==b)||(b==c)||(c==a)){

  }return3;//普通三角形

  return2;//等腰三角形

  return1;//等边三角形

  主函数调用代码:

  shape=DefiniteShape(a,b,c);

  if(shape==0){

  }System.out.println("输入数据不能构成三角形!");

  else

  if(shape==1){

  }else

  if(shape==2){

  }else

  if(shape==3){

  }

  System.out.println("普通三角形!");System.out.println("等腰三角形!");System.out.println("等边三角形!");(二)画出程序流程图:

  开始输入a,b,c判断a,b,c是否都为数字否是判断是否都为整数否是

  a+b>c&&b+c>a&&a+c>b否是是a==b&&b==c否是a==b||b==c||a==c否提示

  等边三角形

  提示

  等腰三角形

  提示

  普通三角形

  提示

  请输入能构成三角形的整数

  结束

  (三)画出控制流图:

  123456798101112

  (四)逻辑覆盖测试:

  条件有:

  1)

  a为数字

  2)

  b为数字

  3)

  c为数字

  4)

  a为整数

  5)

  b为整数

  6)

  c为整数

  7)

  a+b>c8)

  b+c>a9)

  a+c>b10)

  a==b11)

  b==c12)

  a==c所有测试用例(覆盖率达到100%)

  Case1Case2Case3Case42

  输入

  a=’三’,b=’角’,c=’形’

  a=’5’,b=’2’,c=’2’

  a=’2’,b=’2’,c=’2’

  a=’3’,b=’4’,c=’5’

  语句覆盖

  期望输出

  覆盖对象

  请输入能构成三角执行路径:1-2-3-7-12形的整数。

  请输入能构成三角执行路径:1-2-3-4-5-6-9-10-12形的整数。

  执行路径:1-2-3-4-5-6-等边三角形!

  8-12执行路径:1-2-3-4-5-6-普通三角形!

  9-11-12判定覆盖

  期望输出

  覆盖对象

  请输入能构成三角执行路径:1-2-3-7-12形的整数。

  请输入能构成三角执行路径:1-2-3-4-7-12形的整数。

  请输入能构成三角执行路径:1-2-3-4-5-7-12形的整数。

  执行路径:1-2-3-4-5-6-等边三角形!

  8-12执行路径:1-2-3-4-5-6-等腰三角形!

  9-10-12执行路径:1-2-3-4-5-6-普通三角形!

  9-11-12条件覆盖

  期望输出

  覆盖对象

  请输入能构成三角满足:T1,F2,F3形的整数。

  请输入能构成三角满足:F1,T2,T3形的整数。

  请输入能构成三角满足:F4,T5,F6形的整数。

  请输入能构成三角满足:T4,F5,T6形的整数。

  请输入能构成三角满足:F7,T8.T9形的整数。

  测试结果

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  等边三角形!

  普通三角形!

  输入

  a=’字’,b=’0’,Case5c=’0’

  a=’3’,b=’2.3’,Case6c=’3.3’

  a=’6’,b=’3’,c=’Case72’

  a=’12’,b=’12’,Case8c=’12’

  a=’24’,b=’13’,Case9c=’13’

  a=’15’,b=’20’,Case10c=’25’

  输入

  a=’汉’,b=’2’,Case11c=’3’

  a=’6’,b=’d’,Case12c=’字’

  a=’5.3’,b=’Case133.0’,c=’2.3’

  a=’6’,b=’2.3’,Case14c=’3a=’2’,b=’3’,Case15c=’5’

  测试结果

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  等边三角形!

  等腰三角形!

  普通三角形!

  测试结果

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  a=’10’,b=’-3’,c=’6’

  a=’3’,b=’8’,Case17c=’4’

  a=’3’,b=’3’,Case18c=’3’

  a=’25’,b=’26’,Case19c=’27’

  输入

  a=’a’,b=’b’,Case20c=’c’

  a=’1’,b=’2’,Case21c=’3’

  a=’15’,b=’2’,Case22c=’5’

  a=’21’,b=’100’,Case23c=’22’

  a=’3.2’,b=’Case242.3’,c=’2.3’

  a=’12’,b=’12’,Case25c=’12’

  a=’25’,b=’51’,Case26c=’50’

  a=’12’,b=’21’,Case27c=’21’

  a=’25’,b=’25’,Case28c=’22’

  a=’3’,b=’23’,Case29c=’23’

  输入

  Case16Case30Case31Case32Case33Case34Case35Case36Case37请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  等边三角形!

  普通三角形!

  满足:T7,F8,T9满足:T7,T8,F9满足:T10,T11,T12满足:F10,F11,F12请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  等边三角形!

  普通三角形!

  判定-条件覆盖

  期望输出

  覆盖对象

  请输入能构成三角执行路径:1-2-3-7-12形的整数。

  请输入能构成三角执行路径:1-2-3-4-5-7-形的整数。

  12请输入能构成三角执行路径:1-2-3-4-5-7-形的整数。

  12请输入能构成三角执行路径:1-2-3-4-5-7-形的整数。

  12请输入能构成三角执行路径:1-2-3-4-7-12形的整数。

  执行路径:1-2-3-4-5-6-等边三角形!

  8-12执行路径:1-2-3-4-5-6-普通三角形!

  9-11-12执行路径:1-2-3-4-5-6-等腰三角形!

  9-10-12执行路径:1-2-3-4-5-6-等腰三角形!

  9-10-12执行路径:1-2-3-4-5-6-等腰三角形!

  9-10-12

  条件组合覆盖

  期望输出

  覆盖对象

  请输入能构成三角执行路径:1-2-3-4-5-7-a=’1’,b=’2’,c=’3’

  形的整数。

  12请输入能构成三角a=’2’,b=’3’,c=’a’

  执行路径:1-2-3-7-12形的整数。

  请输入能构成三角a=’3’,b=’x’,c=’3’

  执行路径:1-2-3-7-12形的整数。

  请输入能构成三角a=’5’,b=’s’,c=’d’

  执行路径:1-2-3-7-12形的整数。

  请输入能构成三角a=’f’,b=’3’,c=’3’

  执行路径:1-2-3-7-12形的整数。

  请输入能构成三角a=’g’,b=’6’,c=’h’

  执行路径:1-2-3-7-12形的整数。

  a=’h’,b=’发’,c=’请输入能构成三角执行路径:1-2-3-7-1252’

  形的整数。

  a=’都’,b=’是’,c=’请输入能构成三角执行路径:1-2-3-7-12字’

  形的整数。

  测试结果

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  等边三角形!

  普通三角形!

  等腰三角形!

  等腰三角形!

  等腰三角形!

  测试结果

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角3’,b=’3’,c=’223’

  Case38a=’形的整数。

  请输入能构成三角3’,b=’9’,c=’52.3’

  Case39a=’形的整数。

  a=’6’,b=’2.3’,c=’请输入能构成三角Case4023’

  形的整数。

  a=’12’,b=’3.5’,c=’请输入能构成三角Case413.6’

  形的整数。

  a=’6.3’,b=’31’,c=’请输入能构成三角Case423.3’

  形的整数。

  a=’6.3’,b=’336’,c=’请输入能构成三角Case436’

  形的整数。

  a=’2.3’,b=’1.3’,c=’请输入能构成三角Case442.3’

  形的整数。

  a=’3.6’,b=’3.2’,c=’请输入能构成三角Case456’

  形的整数。

  a=’12’,b=’16’,c=’Case46普通三角形!

  20’

  a=’2’,b=’100’,c=’请输入能构成三角Case472’

  形的整数。

  a=’150’,b=’20’,c=’请输入能构成三角Case4830’

  形的整数。

  a=’2’,b=’2’,c=’-请输入能构成三角Case492’

  形的整数。

  请输入能构成三角

  Case50a=’3’,b=’4’,c=’20’形的整数。

  a=’-3’,b=’3’,c=’请输入能构成三角Case513’

  形的整数。

  a=’5’,b=’-9’,c=’请输入能构成三角Case526’

  形的整数。

  a=’-1’,b=’-1’,请输入能构成三角Case53c=’-1’

  形的整数。

  a=’22’,b=’22’,c=’Case54等边三角形!

  22’

  a=’25’,b=’23’,c=’Case55普通三角形!

  24’

  a=’12’,b=’12’,c=’Case56等腰三角形!

  13’

  a=’6’,b=’12’,c=’Case57等腰三角形!

  12’

  执行路径:1-2-3-4-5-7-12执行路径:1-2-3-4-7-12执行路径:1-2-3-4-7-12执行路径:1-2-3-4-7-12执行路径:1-2-3-4-7-12执行路径:1-2-3-4-7-12执行路径:1-2-3-4-7-12执行路径:1-2-3-4-7-12请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  普通三角形!

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  等边三角形!

  普通三角形!

  等腰三角形!

  等腰三角形!

  等腰三角形!

  执行路径:1-2-3-4-5-6-9-11-12执行路径:1-2-3-4-5-7-12执行路径:1-2-3-4-5-7-12执行路径:1-2-3-4-5-7-12执行路径:1-2-3-4-5-7-12执行路径:1-2-3-4-5-7-12执行路径:1-2-3-4-5-7-12执行路径:1-2-3-4-5-7-12执行路径:1-2-3-4-5-6-8-12执行路径:1-2-3-4-5-6-9-11-12执行路径:1-2-3-4-5-6-9-10-12执行路径:1-2-3-4-5-6-9-10-12执行路径:1-2-3-4-5-6-

  等腰三角形!

  Case58a=’2’,b=’1’,c=’2’9-10-125

  路径覆盖

  输入

  期望输出

  覆盖对象

  a=’个’,b=’十’,请输入能构成三角Case59执行路径:1-2-3-7-12c=’百’

  形的整数。

  a=’3.0’,b=’请输入能构成三角Case60执行路径:1-2-3-4-7-122.3’,c=’10’

  形的整数。

  测试结果

  请输入能构成三角形的整数。

  请输入能构成三角形的整数。

  a=’23’,b=’25’,c=’254’

  a=’32’,b=’32’,Case62c=’23’

  a=’25’,b=’25’,Case63c=’13’

  a=’26’,b=’23’,Case64c=’25’

  Case61请输入能构成三角形的整数。

  等腰三角形!

  等腰三角形!

  普通三角形!

  执行路径:1-2-3-4-5-7-12执行路径:1-2-3-4-5-6-8-12执行路径:1-2-3-4-5-6-9-10-12执行路径:1-2-3-4-5-6-9-11-12请输入能构成三角形的整数。

  等腰三角形!

  等腰三角形!

  普通三角形!

  五、编写测试代码

  基本思路:将测试用例存入txt文件→读文件→判断→输出

篇十:白盒测试实训报告三角形

tle>判定三角形的程序及黑盒白盒测试-百度文库

  --WORD格式--可编辑--

  黑盒白盒测试

  实验报告

  学院:计算机科学与工程

  专业:软件工程

  姓名:张子晗

  学号:152210702236

  ---

  --WORD格式--可编辑--

  软件测试计划

  测试目的

  1.

  练习并掌握软件测试管理的一般过程与步骤

  2.

  掌握测试管理的人工过程和能通过相关管理软件实现以

  下操作:

  1)

  创建和管理多个测试组和用户

  2)

  配置测试环境,编写详细测试计划,安排测试进度

  3)

  实施测试,执行测试

  4)

  对测试进行评估

  测试题目

  关于三角形问题的测试

  测试方法

  1.

  对于主题进行黑盒测试,测试内容包括等价类划分测试,边界值分析测试,决策表方法使用。

  2.

  对于主题进行白盒测试,测试内容包括语句覆盖测试,分

  支覆盖测试,条件覆盖测试,分支

  /条件覆盖测试,条件

  组合覆盖测试以及基本路径测试。

  ---

  --WORD格式--可编辑--

  测试资料

  1.

  黑盒测试:

  黑盒测试也称功能测试,它是通过测试来检测每个功能是否

  都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进

  行测试,它只检查程序功能是否按照需求规格说明书的规定正常

  使用,程序是否能适当地接收输入数据而产生正确的输出信息。

  黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对

  软件界面和软件功能进行测试。

  黑盒测试是以用户的角度,从输入数据与输出数据的对应关

  系出发进行测试的。

  很明显,如果外部特性本身设计有问题或规

  格说明的规定有误,用黑盒测试方法是发现不了的。

  2.

  白盒测试:

  白盒测试又称结构测试、透明盒测试、逻辑驱动测试或基于

  代码的测试。

  白盒测试是一种测试用例设计方法,盒子指的是被

  测试的软件,白盒指的是盒子是可视的,你清楚盒子内部的东西

  以及里面是如何运作的。

  "白盒"法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。

  "白盒"法是穷举路径测试。

  在使用这

  一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑

  着手,得出测试数据。贯穿程序的独立路径数是天文数字。

  ---

  --WORD格式--可编辑--

  采用什么方法对软件进行测试呢

  ?常用的软件测试方法有两

  大类:静态测试方法和动态测试方法。其中软件的静态测试不要

  求在计算机上实际执行所测程序,主要以一些人工的模拟技术对

  软件进行分析和测试

  ;而软件的动态测试是通过输入一组预先按

  照一定的测试准则构造的实例数据来动态运行程序,而达到发现

  程序错误的过程。在动态分析技术中

  ,最重要的技术是路径和分

  支测试。

  3.

  黑盒与白盒测试的比较:

  项目

  规划

  优点

  黑盒测试法

  功能的测试

  能确保从用户的角度出

  发进行测试

  无法测定程序内部特定

  部位;当规格说明有误

  则不能发现问题。

  白盒测试法

  结构的测试

  能从程序内部的特定部位

  进行覆盖测试

  无法检查程序的外部特

  性;无法对未实现规格说

  明的程序内部欠缺部分进

  行测试

  缺点

  应用技术

  边界分析法;

  等价类划分法;

  决策表测试。

  语句覆盖,判定覆盖

  条件覆盖,判定/条件覆盖

  路径覆盖,循环覆盖

  模块接口测试

  ---

  --WORD格式--可编辑--

  数据整理

  测试的所得到的用例实验报告,BUG报告,需要进行反馈和最后

  反馈的工作在测试

  的归档,归档的工作按项目计划中所规定的进行。

  项结束后,整理成测试总结报告后进行,具体的日期在项目计划中有

  规定。

  不同阶段的测试都要重复以上步骤。

  三角形问题黑盒测试报告

  1.

  问题描述:

  完成一段程序,要求实现这样的功能。输入三个整数,构成三角形的三条边,输入范围是1-100,判断结果是等腰三角形,等边三角形,不构成三角形或是一般三角形,直角三角形,判断结果均打印输出。

  2.

  程序代码(c++):

  #include

  usingnamespacestd;

  voidmain()

  {

  inta,b,c;

  cout<<”请输入三条边的长度(

  1-100)”<

  ---

  --WORD格式--可编辑--

  cin>>a>>b>>c;

  if(a>=1&&b>=1&&c>=1&&a<=100&&b<=100&&c<=100)

  {

  if(a+b>c&&a+c>b&&b+c>a)

  {

  cout<<”能够构成三角形”;

  if

  (a==b&&b==c)

  cout<<”为等边三角形”;

  elseif

  ((a==b&&a!=c)||(b==c&&c!=a)||(a==c&&a!b))

  cout<<”为等腰三角形”;

  else

  cout<<”为一般三角形”;

  }

  else

  cout<<”不能构成三角形”;

  }

  else

  cout<<”输入的值超出给定范围”;

  }

  ---

  --WORD格式--可编辑--

  3.

  测试方法:

  黑盒测试(等价类划分+边界值分析+决策表方法)

  1)等价类划分

  本程序共计有四种可能的输出:一般三角形,等腰三角形,等边三角形,不构成三角形。

  输入

  a,b,c

  有效等价类

  编号

  无效等价类

  a

  输入的值超出范

  围

  b

  输入的值超出范

  围

  c

  输入的值超出范

  围

  编号

  边为a,b,c

  的一般1

  三角形

  a,b,c

  边为a,b,c

  的等边2

  三角形

  a,b,c

  边为a,b,c

  的等腰3

  三角形

  a,b,c

  边为a,b,c

  不能组4

  成三角形

  2)

  边界值分析方法

  数值a

  0,101

  根据题目要求,输入值中1为最小值,100

  为最大值.于是取刚好小于1的0和刚好大

  于100的101进行边界值分析。

  数值b

  0,101

  根据题目要求,输入值中1为最小值,100

  为最大值.于是取刚好小于1的0和刚好大

  于100的101进行边界值分析。

  ---

  --WORD格式--可编辑--

  数值c1,101

  根据题目要求,输入值中1为最小值,100

  为最大值.于是取刚好小于1的0和刚好大

  于100的101进行边界值分析。

  3)

  决策表方法

  i.

  确定规则个数,本题的决策表共计四个条件。

  C1:a,b,c构成三角形?

  C2:a=b?C3:a=c?

  C4:b=c?

  每个条件可以取两个值,共计有

  16种规则。

  ii.

  iii.

  iv.

  v.

  vi.

  列出所有的条件桩和动作桩

  输入输入项。

  输入动作项,得到初始决策表。

  化简,合并相似规则,最后得到三角形问题的最终决策表。

  规则

  规则

  1-8

  选项

  条件:

  C1:a,b,c

  构成三角

  形?

  C2:a=b?

  C3:a=c?

  C4:b=c?

  规则

  规则

  规则

  11

  规则

  12

  规则

  13

  规则

  14

  规则

  15

  规则

  16

  N

  -

  -

  -

  Y

  Y

  Y

  Y

  Y

  Y

  Y

  N

  Y

  Y

  N

  Y

  Y

  Y

  N

  N

  Y

  N

  Y

  Y

  Y

  N

  Y

  N

  Y

  N

  N

  Y

  Y

  N

  N

  N

  ---

  --WORD格式--可编辑--

  动作:

  A1:非三角形

  A2:一般三角形

  A3:等腰三角形

  A4:等边三角形

  A5:不可能

  白盒测试(语句覆盖,判定覆盖及基本路径测试方法)

  程序的流程图如下

  ---

  --WORD格式--可编辑--

  1)

  语句覆盖

  测试数据

  a=100,b=101,

  c=120

  a=3,b=5,

  c=9

  a=5,b=5,c=5

  a=5,b=5,c=3

  执行路径

  预期结果

  输入的值超出

  给定范围

  实际结果

  输

  入的值超

  出

  给定范围

  不

  能构成三

  角

  形

  等边三角形

  等腰三角形

  一般三角形

  2,3

  不能构成三角

  形

  2,4,5,7

  2,4,6,9

  等边三角形

  等腰三角形

  a=5,b=4,c=6

  2,4,6,10,12

  一般三角形

  2)

  判定覆盖

  测试数据

  a=100,b=101,

  c=120

  a=3,b=5,

  c=9

  a=5,b=5,c=5

  a=5,b=3,c=5

  a=5,b=4,c=6

  a=5,b=5,c=3

  a=3,b=5,c=5

  执行路径

  预期结果

  输入的值超出

  给定范围

  实际结果

  输

  入的值超

  出

  给定范围

  不

  能构成三

  角

  形

  等边三角形

  等腰三角形

  一般三角形

  等腰三角形

  等腰三角形

  2,3

  不能构成三角

  形

  2,4,5,7

  2,4,6,9

  等边三角形

  等腰三角形

  2,4,6,10,12

  一般三角形

  2,4,5,8

  2,4,6,10,11

  等腰三角形

  等腰三角形

  ---

  --WORD格式--可编辑--

  3)

  路径测试

  测试数据

  a=100,b=101,

  c=120

  a=3,b=5,

  c=9

  a=5,b=5,c=5

  a=5,b=3,c=5

  a=5,b=4,c=6

  a=5,b=5,c=3

  执行路径

  预期结果

  输入的值超出

  给定范围

  实际结果

  输

  入的值超

  出

  给定范围

  不

  能构成三

  角

  形

  等边三角形

  等腰三角形

  一般三角形

  等腰三角形

  等腰三角形

  2,3

  不能构成三角

  形

  2,4,5,7

  2,4,6,9

  等边三角形

  等腰三角形

  2,4,6,10,12

  一般三角形

  2,4,5,8

  2,4,6,10,11

  等腰三角形

  等腰三角形

  a=3,b=5,c=5

  ---

篇十一:白盒测试实训报告三角形

le>三角形白盒测试-百度文库

  三角形白盒测试

  一.三角形问题:

  1.

  importjava.util.Scanner;2.public

  classtest3.{4.public

  static

  voidmain(String[]args)5.{6.

  7.

  8.

  9.

  10.11

  12

  13

  14

  16.

  17

  18

  19

  20

  21

  22

  23

  24

  25

  26

  27

  }elseSystem.out.print("inputiserror!");

  }Scannerinput=newScanner(System.in);System.out.print("Enter3integerswhicharesidesofatriangle:");doublea=input.nextDouble();doubleb=input.nextDouble();doublec=input.nextDouble();intsign1=0,sign2=0;if(a>0&&b>0&&c>0&&a<200&&b<200&&c<200){

  if(a+b>c&&a+c>b&&b+c>a){

  }elseSystem.out.print("notaTriangle");if(a==b&&a==c)//F11else

  {

  if(a==b||b==c||a==c)//14

  sign1=1;15.System.out.print("是等边三角形");

  if(a*a+b*b==c*c||a*a==b*b+c*c||b*b==c*c+a*a)//17

  sign2=1;

  }

  if(sign1==1&&sign2==1)

  System.out.print("是等腰直角三角形");System.out.print("是直角三角形");System.out.print("是等腰三角形");

  else

  if(sign1==0&&sign2==1)

  else

  if(sign1==1&&sign2==0)

  elseSystem.out.print("是一般三角形");28

  29

  30.}

  DD路径图:

  程序中节点

  DD路径名称

  4567

  10310101041011·

  51512ABCEIJKLMNABCEIJKLMOPABCEIJKLMOQRABCEIJKLMOQS条件

  1:a>0

  2:b>0

  3:c>0

  4:a<200

  5:b<200

  6:c<2007:a+b>c

  8:a+c>b

  9:b+c>a10:a=b

  11:a=c

  12:a=b13:b=c

  14:a=c

  15:a*a+b*b==c*c16:a*a==b*b+c*c17:b*b==c*c+a*a

  18:sign1=119:sign2=120:sign1=021:sign2=122:sign1=123:sign2=0

  2.判定覆盖:

  编号

  1234567a05101031010b1004`101041011c1001010·

  51512覆盖分支

  F1T(1-6)F7T(1-11)T(1-10)F11T12F13F14T15T(1-9)F(10-14)T15T(1-10)F11T12F13F14F15F16F17T(1-9)F(10-17)T20

  3.条件覆盖:

  bc覆盖判定

  编a号

  123456789011100100F10110T1F2T1T2F3201100100T1T2T3F4100201100T1T2T3T4F5100100201T1T2T3T4T5F65554641011T(1-6)F7T(1-6)T7F8T(1-6)T7T8F9T(1-11)T(1-9)F10F(12-17)F18F19T20F21F22T(1-9)T10F11T12F15F16F17T18F19F20T22F23T(1-9)F10F11F12T13T18F19F20F21T22T(1-9)F10F11F12F13T14T18F19F20F21T22T23T(1-10)F11T12F13F14T15T(1-9)F(10-14)T15F17F18T19T20T21T(1-9)F(10-17)F18F19T20F21F22F231010`1010981010·

  5121110

  1210138141013101431610

  1010810411

  4.路径覆盖:

  编号

  1234567

  5.条件判定覆盖:

  编a号

  123456789011100100F10110T1F2T1T2F3bc覆盖判定

  a05101031010b1004`101041011c1001010·

  51512覆盖路径

  ABDABCFABCEHABCEIJKLMNABCEIJKLMOPABCEIJKLMOQRABCEIJKLMOQS201100100T1T2T3F4100201100T1T2T3T4F5100100201T1T2T3T4T5F65554641011T(1-6)F7T(1-6)T7F8T(1-6)T7T8F9

  1010`1010981010·

  5151243T(1-11)T(1-9)F10F(12-17)F18F19T20F21F22

  T(1-9)T10F11T12F15F16F17T18F19F20T22F23T(1-9)F10F11F12T13T18F19F20F21T22T(1-9)F10F11F12F13T14T18F19F20F21T22T23T(1-10)F11T12F13F14T15T(1-9)F(10-14)T15F17T20T21T(1-10)F11T12F13F14F15F16F17T18F19F20T22T23T(1-9)F(10-17)F18F19T20F21F22F23T(1-9)F(10-14)F15F15T17F18T19T20T21T(1-9)F(10-14)F15T17F18T19T20T211110

  12101381410131014315101610173185

  101081041011546.条件组合覆盖:

  数据流测试

  基路径:

  ABDABCFABCEHABCEIJKLMN

  ABCEIJKLMOPABCEIJKLMOQRABCEIJKLMOQS

  圈复杂度:6+1=7

  变量

  abcsign1定义节点

  891011181120使用节点

  121417191214171912141719212225212225

  sign2

  a的定义使用路径

  变量

  aaaa节点(起始,结是否定义清楚

  束)

  812814817

  819是

  是

  是

  是

  b的定义使用路径

  变量

  bbbb

  c的定义使用路径

  变量

  cccc

  Sign1的定义使用路径

  变量

  节点(起始,结是否定义清楚

  节点(起始,结是否定义清楚

  束)

  101210141017

  1019是

  是

  是

  是

  节点(起始,结是否定义清楚

  束)

  912914917

  919是

  是

  是

  是

  束)

  Sign1Sign1Sign1Sign1Sign1Sign1

  Sign2的定义使用路径

  变量

  Sign2Sign2Sign2Sign2Sign2Sign2

  下一天问题:

  112111221125182118221825

  否

  否

  否

  是

  是

  是

  节点(起始,结是否定义清楚

  束)

  112111221125202120222025

  否

  否

  否

  是

  是

  是

  packagez;

  importjava.util.Scanner;

  importjavax.swing.JOptionPane;publicclassNextDate{

  publicstaticvoidmain(String[]args)

  {

  inttomDay,tomMonth,tomYear;

  intday,month,year;

  System.out.println("Entertoday"sdateintheformMMDDYYYY");

  Scannerinput=newScanner(System.in);1

  month=input.nextInt();2

  day=input.nextInt();3

  year=input.nextInt();4

  if(day<1||day>31||month<1||month>12||year<1812||year>2012)

  {5

  System.out.println("输入错误");

  }6

  else

  {7

  switch(month)

  {8

  case1:9

  case3:10

  case5:11

  case7:12

  case8:13

  case10:

  14

  if(day<31)

  {15

  tomDay=day+1;16

  tomMonth=month;17

  tomYear=year;18

  System.out.println(month+":"+day+":"+year+"

  }19

  else

  {20

  tomDay=1;的下一天是

  "+tomMonth+":"+tomDay+":"+tomYear);

  21

  tomMonth=month+1;22

  tomYear=year;23

  System.out.println(month+":"+day+":"+year+"r);

  }24

  break;25

  case4:26

  case6:27

  case9:28

  case11:29

  if(day<30)

  {30

  tomDay=day+1;31

  tomMonth=month;32

  tomYear=year;33

  System.out.println(month+":"+day+":"+year+"的下一天是

  "+tomMonth+":"+tomDay+":"+tomYear);的下一天是

  "+tomMonth+":"+tomDay+":"+tomYea

  }34

  elseif(day==30)

  {35

  tomDay=1;36

  tomMonth=month+1;37

  tomYear=year;38

  System.out.println(month+":"+day+":"+year+"

  }39

  else

  {40

  System.out.println("输入错误");

  }41

  break;42

  case12:43

  if(day<31)

  {44

  tomDay=day+1;45

  tomMonth=month;46

  tomYear=year;的下一天是

  "+tomMonth+":"+tomDay+":"+tomYear);

  47

  System.out.println(month+":"+day+":"+year+"

  }48

  else

  {49

  tomDay=1;50

  tomMonth=1;51

  tomYear=year+1;52

  System.out.println(month+":"+day+":"+year+"r);

  }53

  break;54

  case2:55

  if(day<28)

  {56

  tomDay=day+1;57

  tomMonth=month;的下一天是

  "+tomMonth+":"+tomDay+":"+tomYea的下一天是

  "+tomMonth+":"+tomDay+":"+tomYear);

  58

  tomYear=year;59

  System.out.println(month+":"+day+":"+year+"

  }60

  elseif(day==28)

  {61

  if((year%4==0&&year%100!=0)||(year%400==0))

  {62

  tomDay=29;63

  tomMonth=month;64

  tomYear=year;65

  System.out.println(month+":"+day+":"+year+"

  }66

  else

  {的下一天是

  "+tomMonth+":"+tomDay+":"+tomYear);的下一天是

  "+tomMonth+":"+tomDay+":"+tomYear);

  67

  tomDay=1;68

  tomMonth=month+1;69

  tomYear=year;70

  System.out.println(month+":"+day+":"+year+"

  }

  }71

  elseif(day==29)

  {72

  if((year%4==0&&year%100!=0)||(year%400==0))

  {73

  tomDay=1;73.5

  tomMonth=month+1;74

  tomYear=year;74.5

  System.out.println(month+":"+day+":"+year+"的下一天是

  "+tomMonth+":"+tomDay+":"+tomYear);的下一天是

  "+tomMonth+":"+tomDay+":"+tomYear);

  }75

  else

  76

  System.out.println("输入错误");

  }77

  else

  {78

  System.out.println("输入错误");

  }79

  break;

  }

  }

  }80}

  程序中的节点

  1-3456-1314DD路径图节点

  开始

  ABCD

  15-1819-232425-282930-333435-3839-4041424344-4748-5253545556-59606162-6566-70FGUEHKLOPWIMQRWJNSTXZX1

  717273-7475-7677-787980

  DD路径图

  YX2X4X5X3X6结束

  开始ABCDEFGHIJKLMNOPQRSTUVWZXX1YX2X4X5X3X6结束

  语句覆盖:

  编MonthDayYear预号

  期输出

  1011991输入预期输出

  输入AB覆盖语句

  错误

  21314656663031153031错误

  1912131131ACDFU19121912191221

  21ABCDGU191219121912616616ACEHKV1912191219127171ACEHLOV1912

  19121912输入错误

  输入错误

  1216ACEIMQWACEHLPV7121519121216191219128129210231162819121111ACEIMQW191319131912217217ACEIJNSX6191219122008229229ACEIJNTXZX6

  1912191211212213228292920071313ACEIJNTXX1X62007200720081313ACEIJNTYX2X4X6200820082007输入错误

  142301912输入错误

  路径覆盖:用例等同于语句覆盖

  编MonthDayYear预号

  期输出

  1011991输入预期输出

  输入AB覆盖路径

  输入错误

  输入错误

  ACEIJNTYX3X6ACEIJNTYX2X5X6

  错误

  21314656663031153031错误

  1912131131ACDFU19121912191221

  21ABCDGU191219121912616616ACEHKV1912191219127171ACEHLOV1912

  19121912输入错误

  输入错误

  1216ACEIMQWACEHLPV7121519121216191219128129210231162819121111ACEIMQW191319131912217217ACEIJNSX6191219122008229229ACEIJNTXZX6

  1912191211212213228292920071313ACEIJNTXX1X62007200720081313ACEIJNTYX2X4X6200820082007输入错误

  142301912输入错误

  条件覆盖:

  条件

  1:day<1

  2:day>31

  3:month<1

  4:month>12

  5:year<1812

  6:year>20127:month=1

  8:month=3

  9:month=5

  10:month=7

  11:month=8

  12:month=1013:day<31

  14:month=4

  15:month=6

  输入错误

  输入错误

  ACEIJNTYX3X6ACEIJNTYX2X5X6

  16:month=9

  17:month=11

  18:day<30

  19:day=30

  20:month=12

  21:day<31

  22:month=2

  23:day<28

  24:day=2825:year%4=0

  26:year%100!=0

  27:year%400=0

  28:day=29

  29:year%4=030:year%100!=0

  31:year%400=0

  编号

  Month123456789106601366135703115151515153215151912T11912F1T21919F1F2T31912F1F2F3T41810F1F2F3F4F5T62030F(1-6)1912F(1-6)T7T131912F(1-7)T8F131912F(1-8)T9T131912F(1-9)T10T13DayYear覆盖条件

  1112131415161718198469111212221515303115153115281912F(1-10)T11T131912F(1-11)F14T181912F(1-11)F14T15F18T191912F(1-11)F14F15T16F18F191912F(1-11)F(14-16)T17T181912F(1-11)F(14-17)T20T211912F(1-11)F(14-17)T20F211912F(1-11)F(14-17)F20T22T232008F(1-11)F(14-17)F20T22F23T24T25T26202282007F(1-11)F(14-17)F20T22F23T24F25F2721222228292000F(1-11)F(14-17)F20T22F23T24T25F26T272008F(1-11)F(14-17)F20F2

  2F23F24T28T29T3023242229292007F(1-11)F(14-17)F20F22F23F24T28F29F312000F(1-11)F(14-17)F20F22F23F24T28T29F30T31252301912F(1-11)F(14-17)F20F22F23F24T28F29程序设计问题:导致不能覆盖F22

  判定覆盖:

  编MonthDayYear预号

  期输出

  1011991输入错误

  2130预期输出

  输入错误

  AB覆盖路径

  1912131131ACDFU19121912

  3146566631153031191221

  21ABCDGU191219121912616616ACEHKV1912191219127171ACEHLOV1912

  19121912输入错误

  输入错误

  1216ACEIMQWACEHLPV71215191212161912191281292102112122311628282919121111ACEIMQW191319131912217217ACEIJNSX6191219122008229229ACEIJNTXZX61912191220071313ACEIJNTXX1X62007200720081313ACEIJNTYX2X4X6

  20082008132292007输入错误

  142301912输入错误

  判定条件覆盖:

  编号

  Month1234567896601366135031151515151531151912T11912F1T21919F1F2T31912F1F2F3T41810F1F2F3F4F5T62030F(1-6)1912F(1-6)T7T131912F(1-7)T8F131912F(1-8)T9T13DayYear覆盖条件

  输入错误

  输入错误

  ACEIJNTYX3X6ACEIJNTYX2X5X6

  101112131415161718197846911121222151515303115153115281912F(1-9)T10T131912F(1-10)T11T131912F(1-11)T14T181912F(1-11)F14T15F18T191912F(1-11)F14F15T16F17F181912F(1-11)F(14-16)T17T181912F(1-11)F(14-17)T20T211912F(1-11)F(14-17)T20F211912F(1-11)F(14-17)F20T22T232008F(1-11)F(14-17)F20T22F23T24T25T26202282007F(1-11)F(14-17)F20T22F23T24F25F27212282000F(1-11)F(14-17)F20T22F23T24T25F26T27

  2223242222929292008F(1-11)F(14-17)F20F22F23F24T28T29T302007F(1-11)F(14-17)F20F22F23F24T28F29F312000F(1-11)F(14-17)F20F22F23F24T28T29F30T3125262728293031323334211119966441303031153031313130311912F(1-11)F(14-17)F20F22F23F24T28F291912F(1-11)F(14-16)T17F18T191912F(1-11)F(14-16)T17F18F191912F(1-11)F14F15T16F17T181912F(1-11)F14F15T16F17F18T191912F(1-11)F14T15F18F191912F(1-11)F14T15F18F191912F(1-11)F14F18F191912F(1-11)T14F18T191912F(1-6)T7F13

  35363738

  3578151531311912F(1-7)T8T131912F(1-8)T9T131912F(1-9)T10F131912F(1-10)T11F13条件组合覆盖

  编号

  Month1234567891011121366013661357846Day0311515151515311515151530Year覆盖条件

  1912T11912F1T21919F1F2T31912F1F2F3T41810F1F2F3F4F5T62030F(1-6)1912F(1-6)T7T131912F(1-7)T8F131912F(1-8)T9T131912F(1-9)T10T131912F(1-10)T11T131912F(1-11)T14T181912F(1-11)F14T15F18T19

  1415161718199111212223115153115281912F(1-11)F14F15T16F17F181912F(1-11)F(14-16)T17T181912F(1-11)F(14-17)T20T211912F(1-11)F(14-17)T20F211912F(1-11)F(14-17)F20T22T232008F(1-11)F(14-17)F20T22F23T24T25T26202282007F(1-11)F(14-17)F20T22F23T24F25F272122232222829292000F(1-11)F(14-17)F20T22F23T24T25F26T272008F(1-11)F(14-17)F20F22F23F24T28T29T302007F(1-11)F(14-17)F20F22F23F24T28F29F31

  242292000F(1-11)F(14-17)F20F22F23F24T28T29F30T312526272829303132333435363738211119966441357830303115303131313031151531311912F(1-11)F(14-17)F20F22F23F24T28F291912F(1-11)F(14-16)T17F18T191912F(1-11)F(14-16)T17F18F191912F(1-11)F14F15T16F17T181912F(1-11)F14F15T16F17F18T191912F(1-11)F14T15F18F191912F(1-11)F14T15F18F191912F(1-11)F14F18F191912F(1-11)T14F18T191912F(1-6)T7F131912F(1-7)T8T131912F(1-8)T9T131912F(1-9)T10F131912F(1-10)T11F13

  数据流测试

  基路径:

  ABACDFUABCDGUACEHKVACEHLOVACEHLPVACEIMQWACEIMQWACEIJNSX6ACEIJNTXZX6ACEIJNTXX1X6ACEIJNTYX2X4X6ACEIJNTYX2X5X6ACEIJNTYX3X6

  变量

  Month定义节点

  使用节点

  89101112

  1618212325262728313336384547525457596365687073.574Day24

  141518202329303334384344475256596065707174Year34

  171822233233373846475152555859616465697074tomDay1520303544182333384749566267735259657074.5tomMonth16213136451823333847505763685259657073.5tomYear74.517223237461823333847

  51586469745259657074.5定义使用路径

  变量month的定义使用路径

  变量

  节点(开是否是定始,结束)

  义清楚路径

  monthMonth14

  他的使用节点)

  变量day的定义使用路径

  变量

  节点(开是否是定始,结束)

  义清楚路径

  dayday24

  是

  2(任何其否

  是

  1(任何其否

  他的使用节点)

  变量year的定义使用路径

  变量

  节点(开是否是定始,结束)

  义清楚路径

  year34

  是

  year3(任何其否

  他的使用节点)

  变量tomDay的定义使用路径

  变量

  节点(开是否是定始,结束)

  义清楚路径

  tomDay1518是

  tomDay2023

  是

  tomDay3033是

  tomDaytomDaytomDaytomDaytomDaytomDaytomDay

  3538444749525659626567707074.5是

  是

  是

  是

  是

  是

  是

  变量tomMonth的定义使用路径

  变量

  节点(开是否是定始,结束)

  义清楚路径

  tomMonth1618tomMonth2123

  tomMonth3133tomMonth3638tomMonth4547tomMonth5052tomMonth5759是

  是

  是

  是

  是

  是

  是

  tomMonth6365tomMonth6870tomMonth73.574.5

  是

  是

  是

  变量tomYear的定义使用路径

  变量

  节点(开是否是定始,结束)

  义清楚路径

  tomYear1718是

  tomYear2223

  是

  tomYear3233是

  tomYear3738是

  tomYear4647是

  tomYear5152是

  tomYear5859是

  tomYear6465是

  tomYear68970是

  tomYear7474.5是

  佣金问题

  #includeusingnamespacestd;intmain(){1

  inta=45,b=30,c=25;//变量a,b,c分别为枪机枪托枪管的价格

  intlocks,stocks,barrels;3

  doublesum;4

  cout<<"请输入已销售的枪机的数量,1-70个之间:"<

  cin>>locks;6

  if(locks>70||locks<1)7

  cout<<"输入枪机数不合法,请输入1-70之间的个数!"<

  else

  {9

  cout<<"请输入枪托的数量,1-80个之间:"<

  cin>>stocks;11

  if(stocks>80||stocks<1)12

  cout<<"输入枪托数不

  合法,请输入1-80之间的个数!"<

  else

  {14

  cout<<"请输入枪管的数量,1-90个之间:"<

  cin>>barrels;16

  if(barrels>90||barrels<1)17

  cout<<"输入枪管数不合法,请输入1-90之间的个数!"<

  else

  {

  19

  if((locks*a+stocks*b+barrels*c)<=1000)

  {20

  sum=(locks*a+stocks*b+barrels*c)*0.1;

  }21

  elseif((locks*a+stocks*b+barrels*c)>1000&&(locks*a+stocks*b+barrels*c)<=

  1800)//大于1000不超过1800的部分

  {22

  sum=100+((locks*a+stocks*b+barrels*c)-1000)*0.15;

  }23

  else24

  sum=220+((locks*a+stocks*b+barrels*c)-1800)*0.2;25

  cout<<"枪机"<

  cout<<"枪托"<

  cout<<"枪管"<

  cout<<"销售总额"<<(locks*a+stocks*b+barrels*c)<<"个"<

  cout<<"佣金"<

  }

  }

  }30

  return0;

  31

  }

  开始ALBMCNDHEFIGO结束程序中节点

  1~56

  DD路径节点

  开始

  A

  78-111213-161718-1920212223-2425-293031语句覆盖

  输入

  序号

  LBMCNDHEIFGO结束

  输出

  LocksStocksBarrels010151001510105输入枪管数不合法

  输入枪托数不合法

  输入枪机数不合法

  覆盖路径

  ALOABMOABCNOABCDHGO1234Sum=50

  56153015301530Sum=175Sum=460ABCDEIGOABCDEFGO判定覆盖

  条件locks>70||locks<1为真简称T1,假为F1;

  条件stocks>80||stocks<1为真简称T2,假为F2;

  条件barrels>90||barrels<1为真简称T3,假为F3;

  条件(locks*a+stocks*b+barrels*c)<=1000为真简称T4,假为F4;

  条件(locks*a+stocks*b+barrels*c)>1000&&(locks*a+stocks*b+barrels*c)<=180为真简称T5,假为F5;

  输入

  序号

  locks12345011515stocks101515barrels110515T1F1T2F1F2T3F1F2F3T4F1F2F3F4T5覆盖语句

  6303030F1F2F3F4F5条件覆盖

  条件:locks>70真为T1,假为F1;

  条件locks<1真为T2,假为F2;

  条件stocks>80真为T3,假为F3;

  条件stocks<1真为T4,假为F4;

  条件barrels>90真为T5,假为F5;

  条件barrels<1真为T6,假为F6;

  条件(locks*a+stocks*b+barrels*c)<=1000真为T7,假为F7;

  条件(locks*a+stocks*b+barrels*c)>1000真为T8,假为F8;

  条件(locks*a+stocks*b+barrels*c)<=1800真为T9,假为F9;

  输入

  序号

  locks123451000111stocksbarrelsT1F1T2F1F2T3F1F2F3T4F1F2F3F4T5覆盖条件

  1110001111100

  6789151530151530051530F1F2F3F4F5T6F1F2F3F4F5F6T7F1F2F3F4F5F6F7T8T9F1F2F3F4F5F6F7T8F9判定/条件覆盖

  输入

  序号

  locks1234567891000111151530stocksbarrelsT1F1T2F1F2T3F1F2F3T4F1F2F3F4T5F1F2F3F4F5T6F1F2F3F4F5F6T7F1F2F3F4F5F6F7T8T9F1F2F3F4F5F6F7T8F9覆盖条件

  1110001151530111100051530组合覆盖

  1序2号

  输locks

  10入

  001111515303456789

篇十二:白盒测试实训报告三角形

le>判定三角形的程序及黑盒白盒测试-百度文库

  判定三角形的程序及黑盒白盒测试

  黑盒白盒测试

  实验报告

  学院:计算机科学与工程

  专业:软件工程

  姓名:***

  学号:************

  软件测试计划

  测试目的

  1.

  练习并掌握软件测试管理的一般过程与步骤

  2.

  掌握测试管理的人工过程和能通过相关管理软件实现以下操作:

  1)

  创建和管理多个测试组和用户

  2)

  配置测试环境,编写详细测试计划,安排测试进度

  3)

  实施测试,执行测试

  4)

  对测试进行评估

  测试题目

  关于三角形问题的测试

  测试方法

  1.

  对于主题进行黑盒测试,测试内容包括等价类划分测试,边界值分析测试,决策表方法使用。

  2.

  对于主题进行白盒测试,测试内容包括语句覆盖测试,分支覆盖测试,条件覆盖测试,分支/条件覆盖测试,条件组合覆盖测试以及基本路径测试。

  测试资料

  1.

  黑盒测试:

  黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。

  黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。很明显,如果外部特性本身设计有问题或规格说明的规定有误,用黑盒测试方法是发现不了的。

  2.

  白盒测试:

  白盒测试又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。白盒测试是一种测试用例设计方法,盒子指的是被测试的软件,白盒指的是盒子是可视的,你清楚盒子内部的东西以及里面是如何运作的。"白盒"法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。"白盒"法是穷举路径测试。在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。贯穿程序的独立路径数是天文数字。

  采用什么方法对软件进行测试呢?常用的软件测试方法有两大类:静态测试方法和动态测试方法。其中软件的静态测试不要求在计算机上实际执行所测程序,主要以一些人工的模拟技术对软件进行分析和测试;而软件的动态测试是通过输入一组预先按照一定的测试准则构造的实例数据来动态运行程序,而达到发现程序错误的过程。在动态分析技术中,最重要的技术是路径和分支测试。

  3.

  黑盒与白盒测试的比较:

  项目

  规划

  优点

  黑盒测试法

  功能的测试

  能确保从用户的角度出发进行测试

  缺点

  无法测定程序内部特定部位;当规格说明有误则不能发现问题。

  白盒测试法

  结构的测试

  能从程序内部的特定部位进行覆盖测试

  无法检查程序的外部特性;无法对未实现规格说明的程序内部欠缺部分进行测试

  应用技术

  边界分析法;

  等价类划分法;

  决策表测试。

  语句覆盖,判定覆盖

  条件覆盖,判定/条件覆盖

  路径覆盖,循环覆盖

  模块接口测试

  数据整理

  测试的所得到的用例实验报告,BUG报告,需要进行反馈和最后的归档,归档的工作按项目计划中所规定的进行。反馈的工作在测试项结束后,整理成测试总结报告后进行,具体的日期在项目计划中有规定。

  不同阶段的测试都要重复以上步骤。

  三角形问题黑盒测试报告

  1.

  问题描述:

  完成一段程序,要求实现这样的功能。输入三个整数,构成三角形的三条边,输入范围是1-100,判断结果是等腰三角形,等边三角形,不构成三角形或是一般三角形,直角三角形,判断结果均打印输出。

  2.

  程序代码(c++):

  #includeusingnamespacestd;voidmain(){inta,b,c;cout<<”请输入三条边的长度(1-100)”<

  cin>>a>>b>>c;if(a>=1&&b>=1&&c>=1&&a<=100&&b<=100&&c<=100){if(a+b>c&&a+c>b&&b+c>a){

  cout<<”能够构成三角形”;

  if(a==b&&b==c)cout<<”为等边三角形”;

  elseif((a==b&&a!=c)||(b==c&&c!=a)||(a==c&&a!b))

  cout<<”为等腰三角形”;

  elsecout<<”为一般三角形”;

  }elsecout<<”不能构成三角形”;

  }elsecout<<”输入的值超出给定范围”;

  }

  3.

  测试方法:

  黑盒测试(等价类划分+边界值分析+决策表方法)

  1)

  等价类划分

  本程序共计有四种可能的输出:一般三角形,等腰三角形,等边三角形,不构成三角形。

  输入

  有效等价类

  编号

  无效等价类

  编号

  a,b,c边为a,b,c的一般1三角形

  a,b,c边为a,b,c的等边2三角形

  a,b,c边为a,b,c的等腰3三角形

  a,b,c边为a,b,c不能组4成三角形

  2)

  边界值分析方法

  数值a0,101a输入的值超出范5围

  b输入的值超出范6围

  c输入的值超出范7围

  根据题目要求,输入值中1为最小值,100为最大值.于是取刚好小于1的0和刚好大于100的101进行边界值分析。

  数值b0,101根据题目要求,输入值中1为最小值,100为最大值.于是取刚好小于1的0和刚好大于100的101进行边界值分析。

  数值c1,101根据题目要求,输入值中1为最小值,100为最大值.于是取刚好小于1的0和刚好大于100的101进行边界值分析。

  3)

  决策表方法

  i.

  确定规则个数,本题的决策表共计四个条件。

  C1:a,b,c构成三角形?

  C2:a=b?C3:a=c?C4:b=c?每个条件可以取两个值,共计有16种规则。

  ii.

  iii.

  iv.

  v.

  vi.

  选项

  条件:

  C1:a,b,c构成三角形?

  C2:a=b?C3:a=c?C4:b=c?列出所有的条件桩和动作桩

  输入输入项。

  输入动作项,得到初始决策表。

  化简,合并相似规则,最后得到三角形问题的最终决策表。

  规则

  规则

  1-8

  N---

  规则

  YYYY

  规则

  规则

  规则

  规则

  规则

  规则

  规则

  10111213141516

  YYYN

  YYNY

  YYNN

  YNYY

  YNYN

  YNNY

  YNNN

  动作:

  A1:非三角形

  A2:一般三角形

  A3:等腰三角形

  A4:等边三角形

  A5:不可能

  ?

  ?

  ?

  ?

  ?

  ?

  ?

  ?

  ?

  白盒测试(语句覆盖,判定覆盖及基本路径测试方法)

  程序的流程图如下

  1)

  语句覆盖

  测试数据

  a=100,b=101,c=120a=3,b=5,c=9a=5,b=5,c=5a=5,b=5,c=3a=5,b=4,c=6

  2)

  判定覆盖

  测试数据

  a=100,b=101,c=120a=3,b=5,c=9a=5,b=5,c=5a=5,b=3,c=5a=5,b=4,c=6a=5,b=5,c=3a=3,b=5,c=5

  2,4,5,72,4,6,92,3执行路径

  1预期结果

  实际结果

  2,4,5,72,4,6,92,3执行路径

  1预期结果

  实际结果

  输入的值超出输入的值超出给定范围

  给定范围

  不能构成三角不能构成三角形

  等边三角形

  等腰三角形

  形

  等边三角形

  等腰三角形

  一般三角形

  2,4,6,10,12一般三角形

  输入的值超出输入的值超出给定范围

  给定范围

  不能构成三角不能构成三角形

  等边三角形

  等腰三角形

  形

  等边三角形

  等腰三角形

  一般三角形

  等腰三角形

  等腰三角形

  2,4,6,10,12一般三角形

  2,4,5,82,4,6,10,11等腰三角形

  等腰三角形

  3)

  路径测试

  测试数据

  a=100,b=101,c=120a=3,b=5,c=9a=5,b=5,c=5a=5,b=3,c=5a=5,b=4,c=6a=5,b=5,c=3a=3,b=5,c=5

  2,4,5,72,4,6,92,3执行路径

  1预期结果

  实际结果

  输入的值超出输入的值超出给定范围

  给定范围

  不能构成三角不能构成三角形

  等边三角形

  等腰三角形

  形

  等边三角形

  等腰三角形

  一般三角形

  等腰三角形

  等腰三角形

  2,4,6,10,12一般三角形

  2,4,5,82,4,6,10,11等腰三角形

  等腰三角形

篇十三:白盒测试实训报告三角形

le>(word版)软件测试案例(三角形白盒测试)-百度文库

  (word版)软件测试案例(三角形白盒测试)一、核心程序代码

  /**判断三角形的类

  */publicclassTriangleTestMethod{

  /**判断三角形的种类。参数

  a,b,c分别为三角形的三边,返回的参数值为0,表示非三角形;

  为1,表示普通三角形;

  为2,表示等腰三角形;

  为3,表示等边三角形。

  */publicstaticintcomfirm(inta,intb,intc){

  if((a+b>c)&&(b+c>a)&&(a+c>b)){//判断为三角形

  if((a==b)&&(b==c))//判断为等边三角形

  return3;if((a==b)||(b==c)||(a==c))//判断为等腰三角形

  return2;else//判断为普通三角形

  return1;

  }else{//为非三角形

  return0;}

  }

  }1/51

  (word版)软件测试案例(三角形白盒测试)

  二、程序流程图

  ①

  N

  a+b>c&&b+c

  >a&&a+c>b

  Y

  ②

  Y

  a==b&&b==c

  N

  ④

  a==b||a==c

  b==c||

  N

  Y

  ⑥

  ⑦

  ⑤

  Return1

  Return2

  Return0

  ③

  Exit

  Return3

  三、测试用例

  1.语句覆盖测试用例:

  输入

  a=1,b=2,c=3

  a=3,b=4,c=5

  a=3,b=3,c=4

  a=3,b=4,c=5

  期望输出

  0

  覆盖对象

  ①,⑤

  ①,②,④,⑥

  ①,②,④,⑦

  ①,②,③

  测试结果

  0

  Case1

  Case2

  Case3

  Case4

  2.判定覆盖测试用例

  输入

  a=1,b=2,c=3

  a=3,b=4,c=5

  a=3,b=3,c=4

  a=3,b=4,c=5

  期望输出

  0

  覆盖对象

  ①,⑤

  ①,②,④,⑥

  ①,②,④,⑦

  ①,②,③

  测试结果

  0

  Case11

  Case12

  Case13

  Case14

  2/52

  (word版)软件测试案例(三角形白盒测试)

  3.条件覆盖测试用例

  输入

  a=1,b=6,c=7

  a=7,b=1,c=6

  a=1,b=7,c=6

  a=3,b=3,c=4

  期望输出

  0

  0

  0

  覆盖对象

  F1,T2,T3

  T1,F2,T3

  T1,T2,F3

  T1,T2,T3,

  F5,T6,F7,F8

  T1,T2,T3,

  F5,F6,F7,T8

  测试结果

  0

  0

  0

  Case5

  Case6

  Case7

  Case8

  T4,

  Case9

  a=3,b=4,c=3

  F4,

  Case10

  a=4,b=3,c=3

  T1,T2,T3,

  T5,F6,T7,F8

  F4,

  4.条件-判定覆盖测试用例

  输入

  a=1,b=6,c=7

  期望输出

  0

  0

  覆盖对象

  F1,T2,T3

  (①,②)

  T1,F2,T3

  (①,②))

  T1,T2,F3

  (①,②)

  T1,T2,T3,

  F5,T6,F7,F8

  (①,②,③,⑦)

  测试结果

  0

  0

  0

  Case15

  Case16

  a=7,b=1,c=6

  Case17

  a=1,b=7,c=6

  0

  Case18

  a=3,b=3,c=4

  T4,

  Case19

  a=3,b=4,c=3

  FT1,T2,T3,4,

  F5,F6,F7,T8

  (①,②,③,⑦)

  Case20

  a=4,b=3,c=3

  T1,T2,T3,

  T5,F6,T7,F8

  (①,②,③,⑦)

  F4,

  Case21

  a=3,b=3,c=3

  F1,T2,T3

  (①,②,③)

  T1,F2,T3

  (①,②,④,⑥)

  Case22

  a=3,b=4,c=5

  5.条件组合覆盖测试用例

  输入

  a=1,b=6,c=7

  a=7,b=6,c=1

  a=1,b=7,c=6

  a=3,b=3,c=3

  期望输出

  0

  0

  0

  覆盖对象

  F1,T2,T3

  T1,F2,T3

  T1,T2,F2

  T1,T2,T3,

  T4,T5

  T1,T2,T3,

  T4,F5,

  测试结果

  0

  0

  0

  Case23

  Case24

  Case25

  Case26

  Case27

  a=3,b=3,c=4

  3/53

  (word版)软件测试案例(三角形白盒测试)

  F6,F7,T8

  T1,T2,T3,

  F4,T5,

  F6,T7,F8

  T1,T2,T3,

  F4,F5,

  F6,F7,F8

  T1,T2,T3,

  F4,F5,

  F6,F7,T8

  Case28

  a=4,b=3,c=3

  Case29

  a=3,b=4,c=5

  Case30

  a=3,b=4,c=3

  备注

  其他条件组合,无法到达结束

  四、程序控制流图

  a+b>c

  A

  b+c>aB

  D

  Return0

  a+c>b

  C

  E

  a==b

  Gb==c

  Fb==c

  H

  Return3

  I

  Return2

  Return2H

  J

  a==c

  Return1

  K

  根本路径覆盖测试用例

  输入

  a=1,b=6,c=7

  a=7,b=6,c=1

  a=1,b=7,c=6

  期望输出

  0

  0

  0

  覆盖对象

  A->D

  A->B->D

  A->B->C->D

  测试结果

  0

  0

  0

  Case31

  Case32

  Case33

  4/54

  (word版)软件测试案例(三角形白盒测试)

  Case34

  a=3,b=3,c=3

  A->B->C->E->G->3

  H

  A->B->C->E->G->2

  I

  A->B->C->E->F->2

  H

  A->B->C->E->F->J2

  ->H

  A->B->C->E->F->J1

  ->K

  Case35

  a=3,b=3,c=4

  a=4,b=3,c=3

  Case36

  Case37

  a=3,b=4,c=3

  a=3,b=4,c=5

  Case38

  5/55

篇十四:白盒测试实训报告三角形

le>白盒测试实验报告三角形-百度文库

  白盒测试实验报告三角形

  白盒测试实验报告——三角形

  一、实验目的

  (1)巩固白盒测试技术,能熟练应用控制流覆盖方法设计测试用例;

  (2)学习测试用例的书写。

  二、实验内容

  判断三角形类型

  输入三个整数a、b、c,分别作为三角形的三条边,通过程序判断这三条边是否能构成三角形?如果能构成三角形,则判断三角形的类型(等边三角形、等腰三角形、一般三角形)。要求输入三个整数a、b、c,必须满足以下条件:1≤a≤200;

  1≤b≤200;

  1≤c≤200。

  要求:

  为测试该程序的方便,请将三角形判断的算法尽量放入一个函数中。

  (1)画出程序的流图;

  (2)分别以语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖设计测试用例,并写出每个测试用例的执行路径

  要求:设计测试用例时,每种覆盖方法的覆盖率应尽可能达到100%(3)请采用基本路径测试方法对程序进行测试,并给出具体测试用例信息。

  (4)通过你的测试,请总结你所使用测试方法发现的Bug。

  三、实验要求

  (1)根据题目要求编写测试用例

  (2)撰写实验报告

  (3)有关的实现程序请附到实验报告中

  (4)实验报告命名规则:学号后两位+姓名_白盒实验?四、实验报告

  (1)程序代码:

  1.importjava.io.*;publicclasssanjiaoxing{privatestaticintx;privatestaticinty;privatestaticintz;2.publicstaticvoidmain(Stringarg[]){intv=0;System.out.println(“请输入三角形第一条边的长!“);x=getside(v);System.out.println(“请输入三角形第二条边的长!“);y=getside(v);System.out.println(“请输入三角形第三条边的长!“);z=getside(v);ifzhijiaotriangle();}3.publicstaticintgetside(intv){BufferedReaderinput=newBufferedReader(newInputStreamReader(System.in));try{v=Integer.parseInt(input.readLine());}catch(IOExceptione){}returnv;}4publicstaticvoidifzhijiaotriangle(){if((x0x200)(y0y200)(z0z200)){5if(x+y=z||x+z=y||z+y=x){6.System.out.println(“您输入的三边不能构成三角形“);}7.else{System.out.println(“一般三角形“);}8.elseif(x==y||x==z||y==z){9if(x==yy==z)10.System.out.println(“您输入的三角形是等边三角形“);12.elseSystem.out.println(“您输入的三角形是等腰三角形“);}}11.else{System.out.println(“超出

  “);}}}(2)

  程序的流图:

  (3)语句覆盖;

  编号

  测试用例

  执行路径

  覆盖语句

  预输出结果

  1(0,10,20)a,c,d1,2,3,4,11,13超出

  2(10,20,35)a,b,e,f1,2,3,4,5,6,13不能构成三角形

  3(3,3,5)a,b,g,j,k,l1,2,3,4,5,7,9,10,13等腰三角形

  4(3,3,3)a,b,g,j,m,n1,2,3,4,5,7,9,12,13等边三角形

  5(10,20,25)a,b,g,h,i1,2,3,4,5,7,8,13一般三角形

  (4)

  判定覆盖;

  编号

  测试用例

  执行路径

  覆盖判定

  预输出结果

  1(0,10,20)

  a,c,dF1超出

  2(10,20,35)

  a,b,e,fT1,F2不能构成三角形

  3(10,20,25)

  a,b,g,h,iT1,T2,F3一般三角形

  4(3,3,5)

  a,b,g,j,k,lT1,T2,T3,F4等腰三角形

  5(3,3,3)

  a,b,g,j,m,nT1,T2,T3,T4等边三角形

  (5)

  条件覆盖:

  条件

  符号

  a=1a=2001Tb=1b=2002Tc=1c=2003Ta+bc4Ta+cb5Tb+ca6Ta==b7Tb==c8Ta==c9T编号

  测试用例

  执行路径

  覆盖条件

  预输出结果

  1(0,10,20)

  a,c,d-1T,2T,3T超出

  2(10,20,35)

  a,b,e,f1T,2T,3T,-4T,5T,6T不是三角形

  3(10,35,20)a,b,e,f1T,2T,3T,4T,-5T,6T不是三角形

  4(35,10,20)a,b,e,f1T,2T,3T,4T,5T,-6T不是三角形

  5(10,20,25)a,b,g,h,i1T,2T,3T,4T,5T,6T,-7T,-8T,-9T一般三角形

  6(3,3,3)a,b,g,j,m,n1T,2T,3T,4T,5T,6T,7T,8T,9T等边三角形

  7(3,3,5)a,b,g,j,k,l1T,2T,3T,4T,5T,6T,7T,-8T,-9T

  等腰三角形

  (6)

  判定/条件覆盖;

  编号

  测试用例

  执行路径

  覆盖条件

  覆盖判定

  预输出结果

  1(0,10,20)

  a,c,d-1T,2T,3TF1超出

  2(10,20,35)

  a,b,e,f1T,2T,3T,-4T,5T,6TT1,F2不能构成三角形

  3(10,35,20)a,b,e,f1T,2T,3T,4T,-5T,6TT1,F2不能构成三角形

  4(35,10,20)

  a,b,e,f1T,2T,3T,4T,5T,-6TT1,F2不能构成三角形

  5(10,20,25)a,b,g,h,i1T,2T,3T,4T,5T,6T,-7T,-8T,-9TT1,T2,F3一般三角形

  6(3,3,3)

  a,b,g,j,m,n1T,2T,3T,4T,5T,6T,7T,8T,9TT1,T2,T3,T4等边三角形

  7(3,3,5)

  a,b,g,j,k,l1T,2T,3T,4T,5T,6T,7T,-8T,-9TT1,T2,T3,F4等腰三角形

  (7)

  组合覆盖;

  编号

  测试用例

  执行路径

  覆盖条件

  预输出结果

  1(0,201,201)a,c,d-1T,-2T,-3T超出

  2(201,201,1)

  a,c,d-1T,-1T,3T超出

  3(201,2,201)

  a,c,d-1T,2T,-3T超出

  4(2,201,202)

  a,c,d1T,-2T,-3T超出

  5(1,2,201)a,c,d1T,2T,-3T超出

  6(1,201,2)a,c,d1T,-2T,3T超出

  7(201,1,2)a,c,d-1T,2T,-3T超出

  8(10,20,35)

  a,b,e,f1T,2T,3T,-4T,5T,6T不能构成三角形

  9(10,35,20)

  a,b,e,f1T,2T,3T,4T,-5T,6T不能构成三角形

  10(35,10,20)

  a,b,e,f1T,2T,3T,4T,5T,-6T不能构成三角形

  11(3,4,5)a,b,g,h,i1T,2T,3T,4T,5T,6T,-7T,-8T,-9T一般三角形

  12(3,3,5)

  a,b,g,j,k,l1T,2T,3T,4T,5T,6T,7T,-8T,-9T等腰三角形

  13(5,3,3)a,b,g,j,k,l1T,2T,3T,4T,5T,6T,-7T,8T,-9T等腰三角形

  14(3,5,3)a,b,g,j,k,l1T,2T,3T,4T,5T,6T,-7T,-8T,9T等腰三角形

  15(3,3,3)a,b,g,j,m,n1T,2T,3T,4T,5T,6T,7T,8T,9T等边三角形

  (8)

  基本路径覆盖;

  经过计算,程序流图的环复杂度为5,因此基本路径有5条

  编号

  测试用例

  基本路径

  预输出结果

  1(10,20,35)

  a,b,c,f不能构成三角形

  2(3,4,5)

  a,b,g,h,i一般三角形

  3(3,3,5)a,b,g,j,k,l等腰三角形

  4(3,3,3)a,b,g,j,m,n等边三角形

  5(0,201,201)a,c,d超出

  附录:测试用例书写格式(语句覆盖为例)

  测试用例表

  编号

  测试用例

  执行路径

  覆盖条件

  覆盖语句

  预输出结果

  1(0,10,20)

篇十五:白盒测试实训报告三角形

le>白盒测试实验报告范文三角形-百度文库

  白盒测试实验报告范文三角形

  (2)学习测试用例的书写。

  二、实验内容判断三角形类型输入三个整数a、b、c,分别作为三角形的三条边,通过程序判断这三条边是否能构成三角形?如果能构成三角形,则判断三角形的类型(等边三角形、等腰三角形、一般三角形)。要求输入三个整数a、b、c,必须满足以下条件:1≤a≤200;

  1≤b≤200;

  1≤c≤200。

  要求:

  为测试该程序的方便,请将三角形判断的算法尽量放入一个函数中。

  (1)画出程序的流图;

  (2)分别以语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖设计测试用例,并写出每个测试用例的执行路径要求:设计测试用例时,每种覆盖方法的覆盖率应尽可能达到100%(3)请采用基本路径测试方法对程序进行测试,并给出具体测试用例信息。

  (4)通过你的测试,请总结你所使用测试方法发现的Bug。

  三、实验要求(1)根据题目要求编写测试用例(2)撰写实验报告(3)有关的实现程序请附到实验报告中(4)实验报告命名规则:学号后两位+姓名_白盒实验四、实验报告(1)程序代码:

  1.importjava.io.某;publicclaanjiao某ing{privatetaticint某;privatetaticinty;privatetaticintz;2.publictaticvoidmain(Strin

  garg[]){intv=0;Sytem.out.println(“请输入三角形第一条边的长!“);某=getide(v);Sytem.out.println(“请输入三角形第二条边的长!“);y=getide(v);Sytem.out.println(“请输入三角形第三条边的长!“);z=getide(v);ifzhijiaotriangle();}3.publictaticintgetide(intv){BufferedReaderinput=newBufferedReader(newInputStreamReader(Sytem.in));try{v=Integer.pareInt(input.readLine());}catch(IOE某ceptione){}returnv;}4publictaticvoidifzhijiaotriangle(){if((某>0&&某<200)&&(y>0&&y<200)&&(z>0&&z<200)){5if(某+y<=z||某+z<=y||z+y<=某){6.Sytem.out.println(“您输入的三边不能构成三角形“);}7.ele{Sytem.out.println(“一般三角形“);}8.eleif(某==y||某==z||y==z){9if(某==y&&y==z)10.Sytem.out.println(“您输入的三角形是等边三角形“);12.eleSytem.out.println(“您输入的三角形是等腰三角形“);}}11.ele{Sytem.out.println(“超出“);}}}(2)程序的流图:

  (3)语句覆盖;

篇十六:白盒测试实训报告三角形

le>三角形程序白盒测试-百度文库

  三角形程序白盒测试

  三角形判断问题白盒测试

  一、问题描绘

  针对三角形的形状判断程序设计测试用例,进行白盒测试。假设这里组成三角形的边取值只好为整数。

  程序判断的种类有:

  二、实验目的

  (1)

  掌握白盒测试的原理;

  (2)

  掌握使用逻辑覆盖和基路径测试等设计测试用例的方法;

  (3)

  掌握单元测试的方法步骤;

  (4)

  掌握控制流图的画法和经过控制流图找出基路径的方法。

  三、实验环境

  平台:win1064位

  环境:Eclipse(neon版本)

  四、实验过程

  (一)编写判断三角形类其他程序

  static

  if

  ((

  :

  inta,intb,int

  c){

  中心代码:

  public

  intDefiniteShape(

  a+b>c)&&(b+c>a)&&(a+c>b)){//判断能够组成三角形

  return

  if

  ((b==c)&&(a==b)){

  1;//等边三角形

  }

  ((a==b)||(return

  if

  b==c)||(

  c==a)){

  2;

  //等腰三角形

  }

  return}

  return

  3;//一般三角形

  0;

  //非三角形

  }

  主函数调用代码:

  shape=

  DefiniteShape

  (a,b,c);

  if(shape==0){

  System.out.println(

  }

  elseif(shape==1){

  "输入数据不可以组成三角形!

  ");

  1/7

  三角形程序白盒测试

  否

  否

  否

  System.out.println(

  }

  elseif(shape==2){

  System.out.println(

  }

  elseif(shape==3){

  System.out.println(

  }

  "等边三角形!

  ");

  "等腰三角形!

  ");

  "一般三角形!

  ");

  (二)画出程序流程图:

  开始

  输入a,b,c

  是

  是

  是

  否

  是

  判断a,b,c能否

  都为数字

  判断能否都为

  整数

  a+b>c&&b+c>a

  &&a+c>b

  是

  a==b&&b==c

  a==b||b==c||a=

  =c

  否

  结束

  提示

  等边三角

  形

  提示

  等腰三角

  形

  提示

  一般三角

  形

  提示

  请输入能构

  成三角形的整数

  (三)画出控制流图:

  2/7

  三角形程序白盒测试

  11

  12

  (四)逻辑覆盖测试:

  条件有:

  1)

  2)

  3)

  a为数字

  b为数字

  c为数字

  3/7

  三角形程序白盒测试

  4)

  5)

  6)

  7)

  8)

  9)

  a为整数

  b为整数

  c为整数

  a+b>cb+c>aa+c>b10)

  a==b11)

  b==c12)

  a==c全部测试用例(覆盖率达到

  100%)

  语句覆盖

  希望输出

  请输入能组成三角

  形的整数。

  形的整数。

  输入

  a=’三’b=,’角’c=,’形’

  覆盖对象

  履行路径:1-2-3-7-12

  履行路径:

  1-2-3-4-5-6-9-10-12

  履行路径:

  1-2-3-4-5-6-8-12

  履行路径:

  1-2-3-4-5-6-9-11-12

  测试结果

  形的整数。

  形的整数。

  等边三角形!

  一般三角形!

  Case1

  请输入能组成三角

  Case2

  a=’5’,b=’2’,c=’2’

  请输入能组成三角

  请输入能组成三角

  Case3

  a=’2’,b=’2’,c=’2’

  等边三角形!

  Case4

  a=’3’,b=’4’,c=’5’

  一般三角形!

  判断覆盖

  希望输出

  请输入能组成三角

  形的整数。

  形的整数。

  形的整数。

  输入

  a=’字’b=,’0’,c=’0’

  覆盖对象

  履行路径:1-2-3-7-12

  履行路径:1-2-3-4-7-12

  履行路径:1-2-3-4-5-7-12

  履行路径:

  1-2-3-4-5-6-8-12

  履行路径:

  1-2-3-4-5-6-9-10-12

  履行路径:

  1-2-3-4-5-6-9-11-12

  测试结果

  形的整数。

  形的整数。

  形的整数。

  等边三角形!

  Case5

  请输入能组成三角

  Case6

  a=’3’,b=’2.3’,c=’3.3’

  a=’6’,b=’3’,c=’2’

  请输入能组成三角

  请输入能组成三角

  Case7

  请输入能组成三角

  请输入能组成三角

  Case8

  a=’12’,b=’12’,c=’12’

  等边三角形!

  Case9

  a=’24’,b=’13’,c=’13’

  等腰三角形!

  等腰三角形!

  一般三角形!

  Case10

  a=’15’,b=’20’,c=’25’

  一般三角形!

  条件覆盖

  希望输出

  请输入能组成三角

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  输入

  a=’汉’b=,’2’,c=’3’

  覆盖对象

  知足:T1,F2,F3

  知足:F1,T2,T3

  知足:F4,T5,F6

  知足:T4,F5,T6

  知足:F7,T8.T9

  测试结果

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  Case11

  请输入能组成三角

  Case12

  a=’6’,b=’d’,c=’字’

  a=’5.3’,b=’3.0’,c=’2.3’

  请输入能组成三角

  请输入能组成三角

  Case13

  请输入能组成三角

  请输入能组成三角

  Case14

  a=’6’,b=’2.3’,c=’3

  a=’2’,b=’3’,c=’5’

  请输入能组成三角

  请输入能组成三角

  Case15

  请输入能组成三角

  请输入能组成三角

  4/7

  三角形程序白盒测试

  Case16

  a=’10’,b=’-3’,c=’6’

  a=’3’,b=’8’,c=’4’

  请输入能组成三角

  形的整数。

  请输入能组成三角

  形的整数。

  知足:T7,F8,T9

  请输入能组成三角

  形的整数。

  形的整数。

  等边三角形!

  一般三角形!

  Case17

  知足:T7,T8,F9

  知足:T10,T11,T12

  知足:F10,F11,F12

  请输入能组成三角

  Case18

  Case19

  a=’3’,b=’3’,c=’3’

  等边三角形!

  a=’25’,b=’26’,c=’27’

  一般三角形!

  判断-条件覆盖

  输入

  希望输出

  请输入能组成三角

  形的整数。

  请输入能组成三角

  形的整数。

  请输入能组成三角

  覆盖对象

  履行路径:1-2-3-7-12

  履行路径:

  1-2-3-4-5-7-12

  履行路径:

  1-2-3-4-5-7-12

  履行路径:

  1-2-3-4-5-7-12

  履行路径:1-2-3-4-7-12

  测试结果

  形的整数。

  形的整数。

  形的整数。

  Case20a=’a’,b=’b’,c=’c’

  请输入能组成三角

  Case21

  a=’1’,b=’2’,c=’3’

  请输入能组成三角

  Case22a=’15’,b=’2’,c=’5’

  请输入能组成三角

  Case23

  形的整数。

  请输入能组成三角a=’21’,b=’100’,c=’22’

  形的整数。

  请输入能组成三角

  形的整数。

  Case24

  a=’3.2’,b=’2.3’,c=’2.3’

  请输入能组成三角

  形的整数。

  请输入能组成三角

  形的整数。

  等边三角形!

  Case25

  a=’12’,b=’12’,c=’12’

  等边三角形!

  履行路径:

  1-2-3-4-5-6-8-12

  履行路径:

  1-2-3-4-5-6-9-11-12

  履行路径:

  1-2-3-4-5-6-9-10-12

  履行路径:

  1-2-3-4-5-6-9-10-12

  履行路径:

  1-2-3-4-5-6-9-10-12

  条件组合覆盖

  覆盖对象

  履行路径:

  1-2-3-4-5-7-12

  履行路径:1-2-3-7-12

  Case26

  a=’25’,b=’51’,c=’50’

  一般三角形!

  一般三角形!

  Case27

  a=’12’,b=’21’,c=’21’

  等腰三角形!

  等腰三角形!

  等腰三角形!

  Case28

  a=’25’,b=’25’,c=’22’

  等腰三角形!

  Case29

  a=’3’,b=’23’,c=’23’

  等腰三角形!

  等腰三角形!

  输入

  a=’1’,b=’2’,c=’3’

  希望输出

  请输入能组成三角

  形的整数。

  请输入能组成三角

  形的整数。

  请输入能组成三角

  形的整数。

  请输入能组成三角

  形的整数。

  请输入能组成三角

  形的整数。

  请输入能组成三角

  形的整数。

  请输入能组成三角

  形的整数。

  请输入能组成三角

  形的整数。

  测试结果

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  Case30

  请输入能组成三角

  Case31

  a=’2’,b=’3’,c=’a’

  a=’3’,b=’x’,c=’3’

  请输入能组成三角

  Case32

  履行路径:1-2-3-7-12

  履行路径:1-2-3-7-12

  请输入能组成三角

  Case33

  a=’5’,b=’s’,c=’d’

  a=’f’,b=’3’,c=’3’

  请输入能组成三角

  Case34

  履行路径:1-2-3-7-12

  履行路径:1-2-3-7-12

  履行路径:1-2-3-7-12

  请输入能组成三角

  Case35

  a=’g’,b=’6’,c=’h’

  a=’h’,b=’发’c=,’52’

  请输入能组成三角

  Case36

  请输入能组成三角

  Case37

  a=’都’b=,’是’c=,’字’

  履行路径:1-2-3-7-12

  请输入能组成三角

  5/7

  三角形程序白盒测试

  Case38

  a=’3’,b=’3’,c=’223’

  a=’3’,b=’9’,c=’52.3’

  请输入能组成三角

  形的整数。

  请输入能组成三角

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  履行路径:

  1-2-3-4-5-7-12

  履行路径:1-2-3-4-7-12

  履行路径:1-2-3-4-7-12

  履行路径:1-2-3-4-7-12

  履行路径:1-2-3-4-7-12

  履行路径:1-2-3-4-7-12

  履行路径:1-2-3-4-7-12

  履行路径:1-2-3-4-7-12

  履行路径:

  1-2-3-4-5-6-9-11-12

  履行路径:

  1-2-3-4-5-7-12

  履行路径:

  1-2-3-4-5-7-12

  履行路径:

  1-2-3-4-5-7-12

  履行路径:

  1-2-3-4-5-7-12

  履行路径:

  1-2-3-4-5-7-12

  履行路径:

  1-2-3-4-5-7-12

  履行路径:

  1-2-3-4-5-7-12

  履行路径:

  1-2-3-4-5-6-8-12

  履行路径:

  1-2-3-4-5-6-9-11-12

  请输入能组成三角

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  一般三角形!

  Case39

  请输入能组成三角

  Case40

  a=’6’,b=’2.3’,c=’23’

  a=’12’,b=’3.5’,c=’3.6’

  请输入能组成三角

  请输入能组成三角

  Case41

  请输入能组成三角

  请输入能组成三角

  Case42a=

  ’6.3’,b=

  ’31’,c=

  ’3.3’

  请输入能组成三角

  请输入能组成三角

  Case43

  a=’6.3’,b=’336’,c=’6’

  请输入能组成三角

  请输入能组成三角

  Case44a=

  ’2.3’,b=

  ’1.3’,c=

  ’2.3’

  请输入能组成三角

  请输入能组成三角

  Case45

  a=’3.6’,b=’3.2’,c=’6’

  请输入能组成三角

  请输入能组成三角

  Case46

  a=’12’,b=’16’,c=’20’

  一般三角形!

  Case47

  a=’2’,b=’100’,c=’2’

  a=’150’,b=’20’,c=’30’

  请输入能组成三角

  形的整数。

  请输入能组成三角

  形的整数。

  请输入能组成三角

  形的整数。

  请输入能组成三角

  形的整数。

  请输入能组成三角

  形的整数。

  请输入能组成三角

  形的整数。

  请输入能组成三角

  请输入能组成三角

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  形的整数。

  等边三角形!

  一般三角形!

  等腰三角形!

  Case48

  请输入能组成三角

  Case49

  a=’2’,b=’2’,c=’-2’

  a=’3’,b=’4’,c=’20’

  请输入能组成三角

  Case50

  请输入能组成三角

  Case51

  a=’-3’,b=’3’,c=’3’

  a=’5’,b=’-9’,c=’6’

  请输入能组成三角

  Case52

  请输入能组成三角

  Case53

  请输入能组成三角

  a=’-1’,b=’-1’,c=’-1’

  形的整数。

  a=’22’,b=’22’,c=’22’

  等边三角形!

  Case54

  Case55

  a=’25’,b=’23’,c=’24’

  一般三角形!

  Case56

  a=’12’,b=’12’,c=’13’

  等腰三角形!

  履行路径:

  1-2-3-4-5-6-9-10-12

  履行路径:

  1-2-3-4-5-6-9-10-12

  履行路径:

  1-2-3-4-5-6-9-10-12

  路径覆盖

  覆盖对象

  履行路径:1-2-3-7-12

  Case57

  a=’6’,b=’12’,c=’12’

  等腰三角形!

  等腰三角形!

  等腰三角形!

  Case58

  a=’2’,b=’1’,c=’2’

  等腰三角形!

  输入

  希望输出

  请输入能组成三角

  形的整数。

  请输入能组成三角

  测试结果

  Case59a=’个’b=,’十’c=,’百’

  请输入能组成三角

  形的整数。

  请输入能组成三角

  Case60

  a=’3.0’,b=’2.3’,c=’10’

  形的整数。

  履行路径:1-2-3-4-7-12

  形的整数。

  6/7

  三角形程序白盒测试

  Case61

  a=’23

  ’,b=’25

  ’,c=’254’

  形的整数。

  请输入能组成三角

  履行路径:

  1-2-3-4-5-7-12

  履行路径:

  1-2-3-4-5-6-8-12

  履行路径:

  1-2-3-4-5-6-9-10-12

  履行路径:

  1-2-3-4-5-6-9-11-12

  请输入能组成三角

  形的整数。

  等腰三角形!

  等腰三角形!

  Case62

  a=’32

  ’,b=’32

  ’,c=’23’

  等腰三角形!

  a=’25

  ’,b=’25

  ’,c=’13’

  等腰三角形!

  Case63

  Case64

  a=’26

  ’,b=’23

  ’,c=’25’

  一般三角形!

  一般三角形!

  五、编写测试代码

  基本思路:将测试用例存入

  txt文件→读文件→判断→输出

  7/7

推荐访问:白盒测试实训报告三角形 角形 实训 测试

【白盒测试实训报告三角形16篇】相关推荐

工作总结最新推荐

NEW
  • 简短设计师年度工作总结面对_年的结尾,我来到公司已经快一年了。感觉时间过的特别快。快的原因并不是因为时间匆匆的流逝,而是因为每天工作的都非常的充实。我以前一

  • 科研工作的个人总结没有高素质的教师队伍,一切高质量教育计划都是空谈。基于这种教育理念,我校的校本培训工作以落实教师专业化这一培训思路,用新的教育思想促进全体

  • 公司业务员年度总结20xx年我公司按照市计生委和市房地产管理局的要求,认真贯彻《人口与计划生育法》,履行计生工作的程序和职责,把人口与计划生育工作放在重

  • 出纳个人先进总结20xx年是紧张忙碌的一年,也是收获满满的一年。这一年来,在公司领导和财务领导的言传身教、关心培养下;在同事们的支持帮助、密切配合下,我不断

  • 幼儿园教师培训总结格式幼儿教师是一个神圣的职业,肩负着为祖国培养下一代的历史重任。当一名教师容易,但是要当一名好幼儿教师却是不易的,通过海西专题培训,我有以

  • 老师个人教学总结格式岁月不居,时光如流,蓦然回首,一学期的语文教学又告结束,回顾20__年,我扎扎实实开展好六年级三班语文教学,怀抱一颗初心,我始终对教学工

  • 宪法日活动总结500字我国宪法是社会主义性质的宪法,必须准确、及时、全面地反映作为执政党的中国共产党的各项政治主张,通过修改宪法的程序,将党的各项路线、方针

  • 酒店营销的年终总结20xx年,营销部在总经理的正确领导及其它部门的密切配合下,部门全体成员本着“提高服务质量,开拓销售渠道,增进最优效益”的宗旨,紧紧围绕年

  • 校园元旦晚会策划书一、基础工作安排1、时间20xx年12月29日18:30~21:302、地点湖北水利水电职业技术学院食堂四楼3、主办单位社团联合会4、协办

  • 高中生寝室打牌检讨书尊敬的老师:您好!我很惭愧,作为班上的一名班干部,竟然做出在寝室打牌这样的事情,就此事而言,我向您道歉,对不起。您对我的批评,我都记在心