zoukankan      html  css  js  c++  java
  • 一个Junit做单元测试的简单例子

    例子很简单,设计一个程序,输入三个整数,判断这三个整数作为三边的长度能否构成一个三角形,如果可以则返回三角形的类型(普通三角形,等腰三角形或者等边三角形)

    实现代码(我自己随便写的做个例子用,估计代码质量很差。。):

    public class JudgeTriangle
    {
     //普通三角形
     private static int NORMAL_TRIANGLE = 0;
     //等腰三角形
     private static int ISOSCELES_TRIANGLE  = 1;
     //等边三角形
     private static int EQUILATERAL_TRIANGEL = 2;
     //无法构成三角形
     private static int ERROR_CODE = -1;

     public int getNormalTriangle()
     {
      return NORMAL_TRIANGLE;
     }
     public int getIsoscelesTriangle()
     {
      return ISOSCELES_TRIANGLE;
     }
     public int getEquilateralTriangle()
     {
      return EQUILATERAL_TRIANGEL;
     }
     public int getErrorCode()
     {
      return ERROR_CODE;
     }
     public int judgeType(int a,int b,int c)
     {
      if ((a<=0)||(b<=0)||(c<=0))
      {
       return ERROR_CODE;
      }
      if ((a+b<c || Math.abs(a-b)>c) || (b+c<a || Math.abs(b-c)>a) || (a+c<b || Math.abs(a-c)>b))
      {
       return ERROR_CODE;
      }
      if (a==b || b==c || c==a)
      {
       if (a==b && b==c)
       {
        return EQUILATERAL_TRIANGEL;
       }
       else
       {
        return ISOSCELES_TRIANGLE;
       }
      }
      else
      {
       return NORMAL_TRIANGLE;
      }
     } 
    }

    单元测试代码:

    import static org.junit.Assert.*;
    import org.junit.After;
    import org.junit.Before;
    import org.junit.Test;

    public class JudgeTriangleTest {
     
     private static JudgeTriangle judgeTriangle = new JudgeTriangle();
     
     @Before
     public void setUp() throws Exception {
     }

     @Test
     public void testIsNormalTriangle() throws Exception {
      assertEquals(judgeTriangle.getNormalTriangle(),judgeTriangle.judgeType(3, 4, 5));
     }
     @Test
     public void testIsIsoscelesTriangle() throws Exception {
      assertEquals(judgeTriangle.getIsoscelesTriangle(),judgeTriangle.judgeType(2, 2, 3));
     }
     @Test
     public void testEquilateralTriangle() throws Exception {
      assertEquals(judgeTriangle.getEquilateralTriangle(),judgeTriangle.judgeType(2, 2, 2));
     }
     @Test
     public void testNotTriangle() throws Exception {
      assertEquals(judgeTriangle.getErrorCode(),judgeTriangle.judgeType(10, -10, 10));
      assertEquals(judgeTriangle.getErrorCode(),judgeTriangle.judgeType(10, 2, 2));
     }
     
     @After
     public void tearDown() throws Exception {
     }

    }

    这两个链接对于junit的介绍比较简单好懂

    http://tech.sina.com.cn/s/2010-01-18/14081218926.shtml

    http://leowzy.iteye.com/blog/793077

  • 相关阅读:
    DHCP服务器与DHCP中继服务器实验
    DAY1-作业
    logging模块的基本使用
    01_docker镜像命令
    00_docker的基本组成
    21_django配置使用mysql数据库的两种方式
    08_使用python操作mysql
    07_mysql的基本操作
    06_python操作mongodb
    05_MongoDB基本操作
  • 原文地址:https://www.cnblogs.com/tuochao/p/4472201.html
Copyright © 2011-2022 走看看