为什么不被@Before调用

时间:2014-09-13 08:46:21

标签: java junit

在下面的测试类中,我的测试对象没有被初始化,因为没有调用Before。

有什么想法吗?

import junit.framework.TestCase;

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

public class CalcDateToolTest extends TestCase 
{
    DatesCalculator calc;

    @Before
    public void initialize() {
        System.out.println("Before");
        calc = new DatesCalculator("15/06/2013", "30/06/2013");
    }

    @Test
    public void testCalcDayDiff() {
        assertEquals(true, calc.getFromDate());
    }

    @After
    public void destroy() {
        calc = null;
    }
}

1 个答案:

答案 0 :(得分:0)

从代码中删除extends TestCase

例如:

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

public class CalcDateToolTest {
    DatesCalculator calc;

    @Before
    public void initialize() {
        System.out.println("Before");
        calc = new DatesCalculator("15/06/2013", "30/06/2013");
    }

    @Test
    public void testCalcDayDiff() {
        assertEquals(true, calc.getFromDate());
    }

    @After
    public void destroy() {
        calc = null;
    }
}