2016-08-25 4 views
0

Я знаю, что это очень распространенная проблема, и я уже выполнял поиск, но почему-то не смог решить мою проблему.Как выполнить тестовый случай Junit из командной строки

Вот контекст проблемы:

создал проект Maven (используя затмение с Maven QuickStart и используются Junit версии 4.12) для моих тестов JUnit. Ниже приводится корпусного enter image description here

И это содержание JUnit Файл-

package JunitRnD.JunitArtifact; 

import static org.junit.Assert.*; 

import java.util.Stack; 

import org.junit.Test; 

public class AppTest { 

    @Test 
    public void emptyTest() { 
     Stack<String> stack = new Stack<String>(); 
     assertTrue(stack.isEmpty()); 
    } 
} 

Проект находится под этим адресом:

/Users/_eclipseWork/JunitArtifact 

И это содержание СПРАВОЧНИК enter image description here

Junit test works from eclipse. Но я хочу запустить его из командной строки. Поэтому я использовал следующие command-

cd /Users/_eclipseWork/JunitArtifact 

java -cp .:/Users/.m2/repository/junit/junit/4.12/junit-4.12.jar:/Users/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar org.junit.runner.JUnitCore JunitRnD/JunitArtifact/AppTest 

Я также использовал другой вариант за структуру каталогов, но всегда получали следующие error-

Caused by: java.lang.ClassNotFoundException: JunitRnD/JunitArtifact/AppTest 

Что я здесь отсутствует?

PS: Также попробовал с установкой расширения .java и .class.

+0

Maven имеет "команду" для запуска одиночных испытаний, FWIW http://maven.apache.org/ surefire/maven-surefire-plugin/examples/single-test.html – rogerdpack

+0

Я работаю над прецедентом, где нужно запустить тестовый пример процессом без Maven – Sam

+0

http://stackoverflow.com/a/3997971/2464657 – Adam

ответ

2

Вам нужно запустить Maven для запуска теста.

mvn -Dtest=JunitRnD.JunitArtifact.AppTest test 

Или, если вы хотите работать без Maven, вам нужен тестовый бегун.

Взгляните:

https://github.com/junit-team/junit4/wiki/test-runners

Вы можете сделать:

java org.junit.runner.JUnitCore TestClass1 [...other test classes...] 
+0

Мне нравится идея mvn с -Dtest (+1). Спасибо за то, что поделился этим. Но он все еще не решает мою проблему. Поскольку я хочу запускать тестовые примеры из командной строки, а также знать о Junitcore и применять то же самое, но это не удается, как упоминалось в моем вопросе. – Sam

Смежные вопросы