Junit的入门使用

系统运维 waitig 386℃ 百度已收录 0评论

一、安装
1.从http://www.junit.org/ 下载junit4相应的jar包;
2. 在CLASSPATH中加入JAR包所在的路径,如E:\Java\jar\junit\junit-4.10.jar;
3. 将junit-4.10.jar加入到项目的lib文件夹或者Libaries中;
4. Window -> Preference -> java -> JUinit(或者Window -> Show View -> Java -> JUnit),检测该项是否存在。若存在,则安装成功;

二、使用
Eclipse中已经对JUnit做了集成,可见其重要性,下面简单介绍一下在Eclipse中使用JUnit 4对加减乘除进行测试。
1.新建工程,写出加减乘除的代码,命名为Calculate类,需要对其进行测试

 public class Calculate {

      public int add(int x, int y){
          return x + y;
      }
      public int minus(int x, int y){
          return x - y;
      }
      public int divide(int x,int y){
         return x / y;
     }
     public int multi(int x, int y){
         return x * y;  
     }
 }

2.对Calculate类添加JUnit 测试单元,右键->new->JUnit Test Case.
这里写图片描述

这里写图片描述

设计测试用例并填入测试函数,主要以加法为例。测试内容中使用的语句主要是assert,timeout,expected(抛出异常)。

package Junit;

import static org.junit.Assert.*;

import org.junit.Before;
import org.junit.Test;

public class CalculateTest {
    private Calculate cal;

    @Before//初始化注释
    public void setUp()throws Exception{
        cal=new Calculate();
    }

    @Test(timeout=100)
    //(timeout为规定方法的运行时间,超出规定的时间也会出错)
    public void testTime() throws InterruptedException{
        Thread.sleep(200);
        int rel = cal.divide(6, 3);

    }


    @Test//Test为测试方法注释
    public void testAdd() {
        assertEquals("正正加法有误",4,cal.add(1,3));
        assertEquals("负负加法有误",-4,cal.add(-1,-3));
        assertEquals("正负加法有误",-2,cal.add(1,-3));
        assertEquals("正负进位有问题",11,cal.add(8,3));
    }

    @Test
    public void testMinus() {
        assertEquals("减法有误",-2,cal.minus(1,3));
    }

    @Test
    public void testDivide() {
        assertEquals("除法有误",2,cal.divide(6,3));
    }

    @Test
    public void testMulti() {
        assertEquals("乘法有误",3,cal.multi(1,3));
    }

}
//以乘法为例,assertEquals("出错输出",我们希望的结果,调用函数)

testTime()会出错

这里写图片描述

因为方法里面的Thread.sleep(200)超出了测试规定的timeout=100ms,所以报错,将里面的sleep改为100或者100内的数就ok了:
这里写图片描述

 介绍几个基本注释:
 
  1.@Test: 测试方法

    a)(expected=XXException.class)如果程序的异常和XXException.class一样,则测试通过
    b)(timeout=100)如果程序的执行能在100毫秒之内完成,则测试通过

  2.@Ignore: 被忽略的测试方法:加上之后,暂时不运行此段代码

  3.@Before: 每一个测试方法之前运行

  4.@After: 每一个测试方法之后运行

  5.@BeforeClass: 方法必须必须要是静态方法(static 声明),所有测试开始之前运行,注意区分before,是所有测试方法

  6.@AfterClass: 方法必须要是静态方法(static 声明),所有测试结束之后运行,注意区分 @After


本文由【waitig】发表在等英博客
本文固定链接:Junit的入门使用
欢迎关注本站官方公众号,每日都有干货分享!
等英博客官方公众号
点赞 (0)分享 (0)