• 作业8:单元测试练习(个人练习)


    • [必做题1] 针对附录1给出的三角形判断Java 代码,应用等价类划分法设计测试用例,用表格形式列出设计的测试用例,写到博客中。(10分)
    测试用例
    序号 测试输入:三条边(a,b,c) 测试预言(Oracle:直角、等腰、等边三角形)
    1 输入(1,1,1) 等边三角形
    2 输入(****) ***

    【答】

    判定类型
     有效等价类  
     无效等价类
    一般三角形 
    ((a>0) Λ(b>0) Λ(c>0))  
    Λ
    (((a+b)>c) V ((a+c)>b) V ((b+c)>a)) (1)
     (a<=0 V b<=0 V c<=0)
    Λ
    (((a+b)<=c) V ((a+c)<=b) V ((b+c)<=a)) (2)
       直角三角形
    (1) Λ (a^2+b^2=c^2)  (3)
          
    (2) V(a^2+b^2!=c^2)  (4)
    等腰三角形
     
     (1) Λ (a=b V a=c V b=c)          (5)
     
    (2) V (a!=b V b!=c V a!=c)           (6)
    等边三角形
     
    (1) Λ (a=b=c )                    (7) 
     
    (2) V (a!=b!=c)                    (8)
    测试用例
    序号 测试输入:三条边(a,b,c) 测试预言(Oracle:直角、等腰、等边三角形)
    1 输入(1,3,7)

      不属于三角形

    2 输入(0,3,7)

      不属于三角形

    3 输入(-2,-5,-7)
    不属于三角形
    4 输入(2,5,7)

      不属于三角形

    5 输入(5,5,6)
    等腰三角形
    6 输入(2,2,2)
    等边三角形
    7 输入(2,8,9)
    一般三角形
    • [必做题2] 模仿附录2给出的三角形判断Junit测试代码,设计单元测试脚本,测试 [必做题1]设计得到的测试用例。注意测试脚本中测试用例出现顺序与[必做题1]表格所列顺序一致。运行所得的测试脚本,截运行结果图,写到博客中,同时将源代码push到你自己的github。(20分)

    【答】

    测试脚本单元

     @Test
         public void testlsTringle1(){
             Triangle1 t=new Triangle1(1,3,7);
             assertFalse(t.isTriangle1(t));
         }
         @Test
         public void testlsTringle2(){
             Triangle1 t=new Triangle1(0,3,7);
             assertFalse(t.isTriangle1(t));
         }
         @Test
         public void testlsTringle3(){
             Triangle1 t=new Triangle1(-2,-5,-7);
             assertFalse(t.isTriangle1(t));
         }
         @Test
         public void testlsTringle4(){
             Triangle1 t=new Triangle1(2,5,7);
             assertFalse(t.isTriangle1(t));
         }
         @Test
         public void testlsTringle5(){
             Triangle1 t=new Triangle1(5,5,6);
             assertFalse(t.isTriangle1(t));
         }
        @Test
         public void testlsTringle6(){
             Triangle1 t=new Triangle1(2,2,2);
             assertFalse(t.isTriangle1(t));
         }
         @Test
         public void testlsTringle7(){
             Triangle1 t=new Triangle1(2,8,9);
             assertFalse(t.isTriangle1(t));
         }

     

    运行截图:

    • [必做题3] 心得体会。写下本次练习你收获的知识点(PS:测试用例设计方法和步骤;测试脚本设计步骤或主要内容)。(10分)

    【答】 

    划分等价类的方法:

    在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。考虑三角形各种可能的情况,将可能出现的几类数据列举几个例子即可。

    PS:在老师所给的java程序中只考虑了等腰三角形、等边三角形、不等边三角形,所以在测试时我未加入直角三角形的相关数据。)

    测试脚本设计:

    一开始对Junit并无涉及,通过网络搜索,大概得知测试方法。按照老师给出的示例,代入自己的数据进行测试,得出的运行结果与预测结果相同。

    通过此次练习,我熟悉并掌握了应用等价类划分法设计测试用例以及用Junit测试代码、设计单元测试脚本,受益匪浅。

  • 相关阅读:
    【SpringMVC】数据校验时,抛出javax.validation.UnexpectedTypeException: HV000030: No validator could be found for type: java.util.Date.
    【SpringMVC】添加操作时返回400
    【c#】 使用Directory.GetFiles获取局域网中任意电脑指定文件夹下的文件
    【opencv】Java实现opencv 调用本地摄像头,实现人脸识别、人形识别、人眼识别
    【opencv】Java实现的opencv3.x版本后Highhui报错
    【opencv】Java+eclipse+opencv 环境搭建 helloword入门demo
    【微信小程序】--小程序中循环遍历(包括js中遍历和wxml中的遍历)
    【微信小程序】--bindtap参数传递,配合wx.previewImage实现多张缩略图预览
    linux命令:tail
    system()
  • 原文地址:https://www.cnblogs.com/yangyangji/p/5485002.html
Copyright © 2020-2023  润新知