java.lang.Exception: Pas d'exécutable méthodes exception dans l'exécution de JUnits

Je suis en train de lancer la JUnit sur mon invite de commande Linux /opt/junit/ contient le nécessaire en pots(POTS de hamcrest-core-1.3.jar et junit.jar) et les fichiers de classe et je suis en utilisant la commande suivante pour exécuter la JUnit:

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

TestJunit classe:

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);
   }
}

Lanceur:

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());
   }
}  

Je suis l'exception suivante sur l'exécution de cette

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
  • je ne sais pas, traversait débutant tutoriels. ces fichiers ont été copiés à partir du tutoriel lui-même. De toute façon eu ma réponse, sqa.fyicenter.com/FAQ/JUnit/...
  • double possible de java.lang.exception pas praticable méthodes junit
  • Aucune réponse travaillé. S'avère que j'avais une ligne de double croisillons d'initialisation dans un de mes tests unitaires...sur JDK 8 pas moins...que, une fois supprimée, la cause de cette erreur de s'en aller! C'était quelque chose comme myObject.setSomething(nouveau OtherObject() {{/*Mis littéralement à rien ici*/}}); Il a fallu des heures pour trouver cette (arrêtais pas de penser à mon importations ont apportant une mauvaise initialiseur statique à partir d'une autre classe, le mauvais chargeur de classe, de réflexion, de déchets, etc). Je crois que ce pourrait être une JVM bug, mais n'ont aucune preuve, donc je vais la laisser cela comme un commentaire au lieu d'une réponse. TL;DR "Supprimer les {{}} une partie de double croisillon init.
InformationsquelleAutor vipin8169 | 2014-06-20