zoukankan      html  css  js  c++  java
  • 作业八—三角形判断单元测试体会

       测试用例

       (含有“()”号的为错误预言)

    序号

    测试输入三条边:a,b,c)

    测试预言

    (Oracle:Illegal,Regular,Scalene,Isoceles)

    4  (0.6.5)  Illegal
    5  (4,2,3)  Scalence
    6  (4,4,4)  Regular
    7  (-2,-2,-2)  Illegal
    8  (3,3,5)  Isoceles
    9  (-2,-2,-2)  (Regular)
    10  (3,3,6)  (Isoceles)
    11  (1,2,3)  (Scalene)

     根据预测用例表,写出如下的测试函数:

           @Test
            public void testlsTringle4(){
                Triangle t=new Triangle(0,6,5);
                assertEquals(t.getType(t),"Illegal");
            }
            @Test
            public void testlsTringle5(){
                Triangle t=new Triangle(4,3,2);
                assertEquals(t.getType(t),"Scalene");
            }
            @Test
            public void testlsTringle6(){
                Triangle t=new Triangle(4,4,4);
                assertEquals(t.getType(t),"Regular");
            }
            @Test
            public void testlsTringle7(){
                Triangle t=new Triangle(-2,-2,-2);
                assertEquals(t.getType(t),"Illegal");
            }
            @Test
            public void testlsTringle8(){
                Triangle t=new Triangle(3,3,5);
                assertEquals(t.getType(t),"Isoceles");
            }
           @Test
            public void testlsTringle9(){
                Triangle t=new Triangle(-2,-2,-2);
                assertEquals(t.getType(t),"Regular");
            }
            @Test
            public void testlsTringle10(){
                Triangle t=new Triangle(3,3,6);
                assertEquals(t.getType(t),"Isoceles");
            }
            @Test
            public void testlsTringle11(){
                Triangle t=new Triangle(1,2,3);
                assertEquals(t.getType(t),"Scalene");
            }
            

         运行测试类,得到测试结果为:

         结果显示(由于函数名和测试用例表一一对应),4-8运行通过,结果达到预期,9-11结果与预期不符。跟我的预期设想一致。

    体会:

         设计测试用例时,根据等价划分,何以分为四类:即非法三角形,一般三角形,等腰三角形,等边三角形。而我增加9-11用例是为了测试特殊输入数据,比如(3,3,6)。若输出为等腰,说明没有进行合法性判断,在测试函数中进行assertEquals(t.getType(t),"Isoceles")产生错误。

         在Eclipse2014版本中,我用的是它的JUnit4,测试方法选中isTriangle(long,long,long)和getType(Triangle)。在测试方法前注明@Teat,表明是测试,而且测试函数必须是Void类型的,且不含任何参数。

         在这次测试中,我使用的是测试类的assertEquals方法(import static org.junit.Assert.*),用来判断实际结果和预期是否一致。

  • 相关阅读:
    Property [*****] not found on type [com.erp.pojo.ErpSupplier]
    python 杀死线程的两种方式
    docker的学习之认识docker(一)
    Ubuntu下 MySQL不支持中文解决办法
    Django项目创建
    git介绍
    python 实现链表的逆置
    python 实现链表的增删改查(双向链表)
    python----super
    python面向对象
  • 原文地址:https://www.cnblogs.com/mzfeng/p/5492451.html
Copyright © 2011-2022 走看看