java.lang.Exception : No runnable methods exception in running JUnits

标签 java junit ubuntu-12.04 junit4

我正在尝试在我的 Linux 命令提示符下运行 JUnit /opt/junit/ 包含必要的 JARS(hamcrest-core-1.3.jar 和 junit.jar)和类文件,我是使用以下命令运行 JUnit:

java -cp hamcrest-core-1.3.jar:junit.jar:. org.junit.runner.JUnitCore  TestRunner

TestJunit 类:

import org.junit.Test;
import static org.junit.Assert.assertEquals;
public class TestJunit {
   @Test
   public void testAdd() {
      String str= "Junit is working fine";
      assertEquals("Junit is working fine",str);
   }
}

TestRunner:

import org.junit.runner.JUnitCore;
import org.junit.runner.Result;
import org.junit.runner.notification.Failure;

public class TestRunner {
   public static void main(String[] args) {
      Result result = JUnitCore.runClasses(TestJunit.class);
      for (Failure failure : result.getFailures()) {
         System.out.println("fail ho gaya"+failure.toString());
      }
      System.out.println("passed:"+result.wasSuccessful());
   }
}  

我在运行时遇到以下异常

JUnit version 4.11
.E
Time: 0.003
There was 1 failure:
1) initializationError(TestRunner)
java.lang.Exception: No runnable methods
    at org.junit.runners.BlockJUnit4ClassRunner.validateInstanceMethods(BlockJUnit4ClassRunner.java:169)
    at org.junit.runners.BlockJUnit4ClassRunner.collectInitializationErrors(BlockJUnit4ClassRunner.java:104)
    at org.junit.runners.ParentRunner.validate(ParentRunner.java:355)
    at org.junit.runners.ParentRunner.<init>(ParentRunner.java:76)
    at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:57)
    at org.junit.internal.builders.JUnit4Builder.runnerForClass(JUnit4Builder.java:10)
    at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
    at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:26)
    at org.junit.runner.Computer.getRunner(Computer.java:40)
    at org.junit.runner.Computer$1.runnerForClass(Computer.java:31)
    at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
    at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:101)
    at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:87)
    at org.junit.runners.Suite.<init>(Suite.java:80)
    at org.junit.runner.Computer.getSuite(Computer.java:28)
    at org.junit.runner.Request.classes(Request.java:75)
    at org.junit.runner.JUnitCore.run(JUnitCore.java:117)
    at org.junit.runner.JUnitCore.runMain(JUnitCore.java:96)
    at org.junit.runner.JUnitCore.runMainAndExit(JUnitCore.java:47)
    at org.junit.runner.JUnitCore.main(JUnitCore.java:40)

FAILURES!!!
Tests run: 1,  Failures: 1

最佳答案

如果您使用 JUnit 4.4 核心运行程序 执行没有 "@Test"方法的类,您将收到此异常。 Kindly consult the link for more info.

礼貌 vipin8169

关于java.lang.Exception : No runnable methods exception in running JUnits,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24319697/

相关文章:

nginx - 安装 phpmyadmin 而不选择 apache2 或 lighttpd

python - ValueError : jpeg is required unless explicitly disabled using --disable-jpeg, 中止

shell - 为什么 ppm 是 : command not found?

java - Junit 在内存数据库中使用 h2 测试 @getmappings

java - 如果特定测试失败则停止 JUnit 套件

java - 无法为当前线程获取事务同步 session

java - 在 Java 中寻找 "consumer that returns value"抽象

java - java "... "运算符做什么(在类构造函数中找到)

java - 返回带有帮助 JSON 的字符串(Java 和 Spring)

java - 用于在 testng 中测试异常的 @Test(expected=ExceptionClass.class) 的替代方案