当前位置: 首页 > 面试题库 >

java.lang.Exception:运行JUnit时没有可运行的方法异常

钱毅
2023-03-14
问题内容

我试图在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核心运行 程序执行一个no的类,则将得到此异常"@Test" method
请查阅链接以获取更多信息。

由vipin8169提供



 类似资料:
  • 我试图运行一个测试来比较用户输入的单词量是否与指定的预期长度(4)相同,但出于某种原因,我总是得到错误:“没有可运行的方法”,而显然有一个?有人能给我解释一下这是怎么回事吗?

  • 问题内容: 我做了一些单元测试(在测试课中)。我读过的教程说我应该为单元测试制作一个TestSuite。 奇怪的是,当我直接运行单元测试(选择测试类- 以jUnit测试运行)时,一切都工作正常,而当我在测试套件中尝试相同的操作时,总会有一个例外:java.lang。例外:没有可运行的方法。 这是测试套件的代码: 任何想法为什么这不起作用? 问题答案: 我没有使用过蚂蚁的经验-所以我现在不使用它来测

  • 当我尝试运行一个JUnit类时,我得到以下错误: 我怀疑这是POM.xml中的配置问题,但我不确定。顺便说一下,这里是依赖项: http://maven.apache.org/maven-v4_0_0.xsd"

  • 我试图在IntelliJ中运行cucumber特征文件。 Cucumber Options指向正确的文件夹,但在尝试执行JUnit运行程序类时,我会收到“无可用任务”通知。 我做错了什么? 这是我的:

  • 问题内容: 我有一个多模块Maven项目,其中一个模块用于分发。 该发行版包含一个我想轻松执行的可执行jar。但是,要执行它,我必须键入类似以下内容: 简单键入以下内容将是更好的选择: 不幸的是,我找不到找到执行.jar的java目标的方法。exec目标实际上可以做到,但是有一个陷阱:jar包含一个嵌入式码头服务器,并且由于exec的工作方式(不使用与maven相同的JVM),除非我杀死进程,否则

  • 问题内容: 我们正在使用JUnit 4进行测试:我们的类不是的子类,并且它们的公共方法带有注释。一个文件有很多方法。能够通过命令行从Ant运行它们的一个子集,就像JUnit 3的本食谱一样,这将是很好的: http://today.java.net/pub/a/today/2003/09/12/individual-test- cases.html 我一直在尝试用Java反射等方法来实现此目的。由