2017-05-07 1 views
1

src/main 디렉토리와 src/test 디렉토리가있는 다른 사람이 호스팅하는 maven 프로젝트가 있습니다. src/test dir은 Test으로 끝나는 Java 파일을 포함하고 있습니다. ATest.java이라고 부르며 ATest 클래스는 정적 공백 메인 함수 만 포함합니다.maven 테스트 명령을 실행할 때 테스트를 실행하지 않습니다.

    : 디렉토리에 두 파일이
    //omitted 
    
    public class ATest { 
        public static void main(String[] args) throws Exception { 
         BTester.main(null); 
         CTester.main(null); 
        } 
    } 
    

    BTesterCTester

    처럼 내가 mvn clean test를 입력하면 src/main/java/<package_path>/tester

    , 그것은

    [INFO] ------------------------------------------------------- 
    [INFO] T E S T S 
    [INFO] ------------------------------------------------------- 
    [INFO] 
    [INFO] Results: 
    [INFO] 
    [INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0 
    

    나는 다음과 같은 방법을 시도 보여주고있다
  1. import org.junit.Test 및 주 기능 앞에 @Test 설명자를 추가하지만 주 정적이며 매개 변수를 허용하기 때문에 오류가 발생합니다. 그런 다음 BTester.mainCTester.main을 다른 함수 testmain으로 이동하고 @Testtestmain 앞에 추가하려고 시도했지만 컴파일 할 때 예외가 잡히다는 메시지가 표시되면 throws Exception을 추가하더라도 오류가 발생합니까?

  2. 사용 maven-surefire-plugin, 여기에 내가 pom.xml 파일 <plugin> <artifactId>maven-surefire-plugin</artifactId> <version>2.20</version> <configuration> <includes> <include>ATest.java</include> </includes> </configuration> </plugin>

에 그것을했다하지만 여전히 작동하지 않는 방법이다.

무엇을 놓쳤습니까? 나는 Java에 익숙하지 않고, Maven이 아니라, 이제는 도움이 필요하다. 감사.

답변

1
  1. /src/test/java에 테스트 클래스를 배치하십시오.
  2. 테스트 방법이 필요합니다. JUNIT을 사용하는 테스트 방법으로 메인을 사용하지 마십시오
+0

감사합니다. 사실 저는 어제 방법 2를 시도했지만, 알려지지 않은 몇몇 시도에 대해서는 효과가 없었고, 갑자기 지금은 작동합니다 ... 어쩌면 어리석은 실수를 한 것일 수도 있습니다. 그러나 어쨌든 문제는 해결됩니다. –

관련 문제