I have many individual testes to test a specific class using JUnit. During development, I am just focusing on one individual test only and so for example, I just want to run testCompoundProc0 only.
One way to do is "Junit Test" under "Run As/Debug As" by selecting the test and clicking right button.
But for latest CZT built with Java 8 and Maven 3.2.5 on Eclipse (Mars), there is an error.
java.lang.NoSuchMethodError: org.junit.runner.Description.getClassName()Ljava/lang/String;So I guest it may be due to the problem of JUnit version used. At first, find out which version is used in CZT. Check "czt-code/pom.xml" or in Eclipse, "Project" -> "Properties" -> "Java build path" -> "Libraries" -> "Maven Dependencies". So JUnit 4.5 is used.
at org.eclipse.jdt.internal.junit4.runner.DescriptionMatcher$LeadingIdentifierMatcher.matches(DescriptionMatcher.java:95)
at org.eclipse.jdt.internal.junit4.runner.DescriptionMatcher$CompositeMatcher.matches(DescriptionMatcher.java:38)
at org.eclipse.jdt.internal.junit4.runner.SubForestFilter.collectIncludedDescriptions(SubForestFilter.java:49)
at org.eclipse.jdt.internal.junit4.runner.SubForestFilter.apply(SubForestFilter.java:41)
at org.junit.internal.requests.FilterRequest.getRunner(FilterRequest.java:35)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createFilteredTest(JUnit4TestLoader.java:77)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createTest(JUnit4TestLoader.java:68)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.loadTests(JUnit4TestLoader.java:43)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:444)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
Try to use another version, "$ls ~/.m2/repository/junit/junit/" and found there is a latest 4.8.1 version. Go to "Project" -> "Properties" -> "Java build path" -> "Libraries" -> "Add External JARs" and choose "~/.m2/repository/junit/junit/4.8.1/junit-4.8.1.jar".
Then tried again and it succeeds to run one individual test once.
Nice, thank you for the help
ReplyDelete