У меня есть один файл класса java, в котором я написал свои коды, и один тестовый файл, где я тестирую свой код.
Я сгенерировал свои тестовые примеры с помощью генератора тестов Eclipse и написал свои коды с помощью @Test. Когда я запускаю эти коды с JUnit Test, все работает, но я хочу экспортировать как jar и выполнить его. Итак, мне нужен основной внутри тестового класса. Я искал в Google и StackOverflow
public static void main(String[] args) {
JUnitCore jCore = new JUnitCore();
jCore.run(StackTest.class);
System.out.println("In main method");
}
Другой подход;
public class testRunner {
public static void main(String[] args) {
Result result = JUnitCore.runClasses(AllTests.class);
for (Failure failure : result.getFailures()) {
System.out.println(failure.toString());
}
}
}
или
public static void main(String args[]) {
TestRunner.runAndWait(new TestSuite(StackTest.class));
JUnitCore runner = new JUnitCore();
TextListener tl = new TextListener(new RealSystem());
runner.addListener(tl);
runner.run(StackTest.class);
// If above doesn't work, comment everything including imports and uncomment the following
org.junit.runner.JUnitCore.main("StackTest");
}
Как эти решения, но у меня ничего не получалось. Как я могу сделать исполняемые тесты для Java-приложения не запущенными как JUnit? Потому что я хочу экспортировать тест в банку и выполнить его снаружи.
Мои ошибки обычно, как показано ниже:
JUnit version 4.12 .E Время: 0,005 Произошел 1 сбой: 1)
initializationError (StackTest) java.lang.Exception: не запускается
методы в
org.junit.runners.BlockJUnit4ClassRunner.validateInstanceMethods (BlockJUnit4ClassRunner.java:191)
в
org.junit.runners.BlockJUnit4ClassRunner.collectInitializationErrors (BlockJUnit4ClassRunner.java:128)
в org.junit.runners.ParentRunner.validate (ParentRunner.java:416) в
org.junit.runners.ParentRunner. (ParentRunner.java:84) в
org.junit.runners.BlockJUnit4ClassRunner. (BlockJUnit4ClassRunner.java:65)
в
org.junit.internal.builders.JUnit4Builder.runnerForClass (JUnit4Builder.java:10)
в
org.junit.runners.model.RunnerBuilder.safeRunnerForClass (RunnerBuilder.java:59)
в
org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass (AllDefaultPossibilitiesBuilder.java:26)
в org.junit.runner.Computer.getRunner (Computer.java:40) в
org.junit.runner.Computer $ 1.runnerForClass (Computer.java:31) в
org.junit.runners.model.RunnerBuilder.safeRunnerForClass (RunnerBuilder.java:59)
в
org.junit.runners.model.RunnerBuilder.runners (RunnerBuilder.java:101)
в
org.junit.runners.model.RunnerBuilder.runners (RunnerBuilder.java:87)
в org.junit.runners.Suite. (Suite.java:81) в
org.junit.runner.Computer.getSuite (Computer.java:28) в
org.junit.runner.Request.classes (Request.java:75) в
org.junit.runner.JUnitCommandLineParseResult.createRequest (JUnitCommandLineParseResult.java:118)
в org.junit.runner.JUnitCore.runMain (JUnitCore.java:77) в
org.junit.runner.JUnitCore.main (JUnitCore.java:36) в
StackTest.main (StackTest.java:144)
FAILURES !!! Выполнено тестов: 1, сбоев: 1