码迷,mamicode.com
首页 > 其他好文 > 详细

Junit4的基本使用

时间:2015-05-28 15:39:38      阅读:109      评论:0      收藏:0      [点我收藏+]

标签:

如果是基于Eclipse使用Junit,在现在的Eclipse版本中都已经集成了Junit,可以根据自身的需求自由使用Junit3或者Junit4。在本文中主要通过测试简单算术程序(加,减,乘,除)来介绍Junit4的使用,并引入一个简单的案例进行讲解。

Step 1: 写出基本的算术代码Calculate.java

package com.fjnu.util;

public class Calculate {
    public int add(int a, int b){
        return a+b;
    }
    public int minus(int a, int b){
        return a-b;
    }
    public int divide(int a,int b){
        return a/b;
    }
    public int multi(int a, int b){
        return a*b;
    }
}

Step 2: 对Calculate类添加Junit4的测试单元,右键->new->JUnit Test Case,如下图

技术分享

Step 3: 对添加的测试用例进行配置,命名为TestCalculate,点击Next

Step 4: 选择需要测试的函数,点击Finish,完成JUnit的基本配置

技术分享

Step 5: 在经过上面的步骤之后,就可以得到配置好的测试用例

package com.fjnu.util;

import org.junit.Before;
import org.junit.Test;
// 静态导入
import static org.junit.Assert.*;

public class TestCalculate {
    private Calculate cal;
   
    // 执行任意一个方法之前都会执行setUp方法
    @Before
    public void setUp(){
        cal = new Calculate();
    }
   
    // 加了@Test表示该方法是一个单元测试
     @Test
    public void testAdd(){
        /*
         * 以下是一个简单的断言的编写
         * 第一个参数是如果出错给出的提示信息
         * 第二个表示期望值,通常是用户指定的内容
         * 第三个表示代码返回的实际值
         */
    //    Assert.assertEquals("加法有问题", 34, cal.add(12,22));
         /*
          * 由于包进行了静态导入之后
          * Assert中的所有静态方法就不用再添加类名了
          * 这样可以有效地兼容junit3
          */
         assertEquals("加法有问题", 34, cal.add(12,22));
    }
     @Test
     public void testMinus(){
         int res = cal.minus(12, 2);
//        Assert.assertEquals("减法有问题", 10, res);
         assertEquals("减法有问题", 10, res);
     }
     // 表示这个测试类应该抛出ArithmeticException,如果不抛出就报错
     @Test(expected=ArithmeticException.class)
     public void testDivide(){
         int res = cal.divide(12, 0);
         assertEquals("除法有问题", 6, res);
     }
    
     // 时间单位为ms
     @Test(timeout=190)
     public void testTime() throws InterruptedException{
          Thread.sleep(209);
         int rel = cal.divide(12, 2);
     }
    
     @Test
     public void testMulti(){
         int res = cal.multi(12, 2);
         assertEquals("乘法有问题",24,res);
     }
     //hamcrest 1.3
}

Step 6: 现在需要做的就是添加上需要测试的数据

package com.ysc.main;

import static org.junit.Assert.*;

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

public class CalculateTest {

    @BeforeClass
    public static void setUpBeforeClass() throws Exception {
    }

    @Before
    public void setUp() throws Exception {
    }

    @Test
    public void testAdd() {
        assertEquals(5, Calculate.add(1, 4));
    }

    @Test
    public void testMinus() {
        assertEquals(-1, Calculate.minus(2, 3));
    }

    @Test
    public void testDivide() throws Exception {
        assertEquals(0, Calculate.divide(1, 4));
    }

    @Test
    public void testMultiply() {
        assertEquals(4, Calculate.multiply(1, 4));
    }

}

Step 7: 开始进行测试,右键->Run as->JUnit Test

技术分享

由于添加的数据都是正常运行的数据,所有用例都测试正常

技术分享

Junit4的基本使用

标签:

原文地址:http://www.cnblogs.com/rurubyz/p/4535909.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!