运行现象:

    [junit] Running com.company.test.FooTest
    [junit] java.lang.NoSuchMethodError: junit.framework.TestCase.name();Ljava/lang/String;
    [junit]     at org.apache.tools.ant.taskdefs.optional.junit.PlainJUnitResultFormatter.startTest(PlainJUnitResultFormatter.java:188);
    [junit]     at junit.framework.TestResult.startTest(TestResult.java:151);
    [junit]     at junit.framework.TestResult.run(TestResult.java:103);
    [junit]     at junit.framework.TestCase.run(TestCase.java:118);
    [junit]     at junit.framework.TestSuite.runTest(TestSuite.java:208);
    [junit]     at junit.framework.TestSuite.run(TestSuite.java:203);
    [junit]     at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:231);
    [junit]     at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:409);
    [junit] Exception in thread "main"

junit 3.8.1, ant 1.6.0 & 1.5.4都出现此错误
(已将junit.jar复制到ant_home/lib)

解决方法:

换junit 3.7,测试程序可以运行,但是,TestCase必须重写那个带String参数的构造器才能通过编译(在junit 3.8.1下没有这个问题,先前我们的TestCase都没有这样做)
而用junit 3.8.1的话,不管是否重写构造器,总是会出NoSuchMethodError -_-b

相关文章:

  • 2021-07-05
  • 2022-12-23
  • 2021-10-29
  • 2021-11-29
  • 2022-01-18
  • 2021-10-16
  • 2021-07-17
  • 2021-09-09
猜你喜欢
  • 2021-04-18
  • 2021-04-22
  • 2022-12-23
  • 2022-01-18
  • 2021-08-22
  • 2021-12-14
  • 2021-04-23
相关资源
相似解决方案