Junit3 suite.addTest(new mytest())得到'null'错误

时间:2015-11-19 10:13:59

标签: junit junit3

我创建了一个测试套件并希望添加一些新的测试,但是suite.addTest()方法似乎不能像我预期的那样工作:

public static Test suite() {
    TestSuite suite = new TestSuite(AllTests.class.getName());
    //$JUnit-BEGIN$
    // This line works
    suite.addTestSuite(TestAdd.class);
    // This line will cause a 'null' failure
    suite.addTest(new TestAdd());
    //$JUnit-END$
    return suite;
}

TestAdd代码:

import junit.framework.TestCase;
public class TestAdd extends TestCase { 
    public void test1()
    {
        assertEquals(1, 1);
    }
}

我错过了什么吗?

1 个答案:

答案 0 :(得分:1)

来自Javadocs:

  

<强>测试用例()

     

No-arg构造函数以启用序列化。 此方法不适合凡人使用而不调用setName()。

     

TestCase(java.lang.String name)

     

构造具有给定名称的测试用例。

看来你必须使用TestCase构造函数传递测试名称字符串。使用no-arg构造函数仅用于启用测试用例的序列化。

尝试:

suite.addTest(new TestAdd("add"));