확실한 테스트 만 건너 뛰는 가장 간단한 방법 은 다음과 같이 surefire를 구성하는 것입니다 ( 그러나 failsafe는 아님).
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.14</version>
<configuration>
<!-- skips surefire tests without skipping failsafe tests.
Property value seems to magically default to false -->
<skipTests>${skip.surefire.tests}</skipTests>
</configuration>
</plugin>
이것은 당신이 실행할 수있게 mvn verify -Dskip.surefire.tests
하며, 안전 장치가 아닌 확실한 테스트 만 생략합니다; 또한 사전 통합 및 사후 통합을 포함한 다른 모든 필요한 단계를 실행하고 통합 테스트가 실패하면 verify
실제로 maven 빌드를 실패 하는 데 필요한 목표를 실행합니다 .
이것은 테스트를 건너 뛰도록 지정하는 데 사용되는 속성을 재정의하므로, 표준을 제공하면 -DskipTests=true
확실한 것은 무시하지만 비상 안전은 그것을 무시합니다. 특히 플래그를 이미 지정하는 기존 빌드 / 사용자가있는 경우 예기치 않은 결과가 발생할 수 있습니다. 간단한 해결 방법은 기본값 것 같다 skip.surefire.tests
의 값으로 skipTests
당신의 <properties>
POM을 섹션 :
<properties>
<skip.surefire.tests>${skipTests}</skip.surefire.tests>
</properties>
필요한 경우, skip.failsafe.tests
안전 장치 (failsafe) 라고하는 analagous 매개 변수를 제공 할 수는 있지만, 필요하지 않습니다. 단위 테스트는 일반적으로 초기 단계에서 실행되기 때문에 단위 테스트는 실행하지만 통합 테스트는 실행하지 않으려면 실행합니다. test
대신의 단계 verify
단계입니다. 당신의 경험은 다를 수 있습니다!
이러한 skip.(surefire|failsafe).tests
속성은 아마도 firefire / failsafe 코드 자체에 통합되어야하지만 "1 개의 작은 차이를 제외하고는 정확히 동일한 플러그인"정신을 위반하는 것이 확실하지 않습니다.
maven.test.skip
나skipTests
?