2013-10-29 3 views
3

첫째로, 나는 여기에 언급하지 않은 것이 있다면 당신이 필요로하는 정보를 제공하려고 노력할 것입니다. 그래서테스트가 실패했지만 JUnit 러너 테스트가 통과하는 Maven 빌드?

내가 이클립스 받는다는를 사용하여 내 웹 애플리케이션 구축을 위해 노력하고, 나는 다음과 같은

@RunWith(Suite.class) 
@Suite.SuiteClasses({ 
    // all my test classes 
}) 

이 잘 작동하고 내가 마우스 오른쪽 버튼으로 클릭하고 실행하여 테스트를 실행할 때 모든 테스트를 통과와 테스트 스위트가 Junit 테스트로.

Maven 빌드로 실행하고 패키지 목표로 테스트를 수행하지 못했습니다 ???

<plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-surefire-plugin</artifactId> 
     <version>2.16</version> 
     <dependencies> 
      <dependency> 
       <groupId>org.apache.maven.surefire</groupId> 
       <artifactId>surefire-junit47</artifactId> 
       <version>2.16</version> 
      </dependency> 
     </dependencies> 
     <configuration> 
      <excludes> 
       <exclude>**/Test*.java</exclude> 
      </excludes> 
      <includes> 
       <include>**/DynamoUnitTestSuite.java</include> 
      </includes> 
     </configuration> 
    </plugin> 

는 통합 테스트를 실행 제외하고 단지 내 테스트 스위트에서 어떤 실행이 방법을 다음과 같이

내 받는다는 확실한 플러그인 구성됩니다.

maven 빌드를 실행할 때 내 테스트가 실패하지만 테스트 스위트 만 실행하면 실패하는 이유는 무엇입니까 ???

답변

5

좋아요. 정리해보세요. 네가 이걸 좋아할거야.

이클립스에서는 종속성을 체크 아웃하고 두 프로젝트를 변경하면서 마스터 (우리는 Git도 사용하고 있음)를 분기했다. JUnit 러너를 테스트 할 때 Eclipse가 의존성을 가지고 있다는 것을 인식했기 때문에 잘 돌아가고 있었지만, maven 빌드를 실행할 때 여전히 의존성의 이전 버전을 사용하고있었습니다 ...

To 이 문제를 해결하려면 종속성의 버전 번호를 변경하고 수동으로 내 로컬 메이븐 레포에 복사 한 다음이를 사용하도록 기본 프로젝트 pom 파일을 업데이트하십시오. 이제 volia에서는 빌드를 빌드 할 때 모든 테스트를 통과합니다.

+4

여기에 어떤 의존성이 있습니까? –

관련 문제