开发者

Java Junit testing problem

I am using Junit 4. My whole program is working fine. I am trying to write a test case. But there is one error...

here is very basic sample test

public class di  extends 开发者_运维技巧TestCase{
    private static Records testRec;
    public void testAbc() {
        Assert.assertTrue(
            "There should be some thing.",
            di.testRec.getEmployee() > 0);
    }

}

and when i run this it give me error that

fName can not be null

if i use super and do like this

public TestA() {
super("testAbc");
}

it work all fine. It wasn't this before with JUnit 3.X am I doing wrong or they changed it :( Sorry if I am not clear

Is there any way to executre test without super? or calling functions etc. ?


In JUnit 4 you need not extend TestCase, instead use the @Test annotation to mark your test methods:

public class MyTest {
    private static Records testRec;
    @Test
    public void testAbc() {
        Assert.assertTrue(
            "There should be some thing.",
            MyTest.testRec.getEmployee() > 0);
    }
}

As a side note, testing a static member in your class may make your unit tests dependent on each other, which is not a good thing. Unless you have a very good reason for this, I would recommend removing the static qualifier.


This is not your case but this error may also mean that you have a file named Test.java in your project. Renaming it will fix the error but after refactoring @Test will be changed to @NewName (at least in Eclipse) so remember to manually change it back to @Test.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜