maven :: 다중 모듈 프로젝트에서 단일 테스트 만 실행
모든 테스트를 건너 뛰고 일부 모듈에서 하나씩 건너 뛰기 위해 명령 줄 인수를 제공하는 방법이 있습니까? 따라서 다른 테스트를 실행할 때마다 pom.xml을 변경할 필요가 없습니까?
예를 들어 TeamCity에서 빌드 구성을 만들고 일부 모듈에서 단일 테스트 만 실행하는 명령 줄 인수를 제공하려고합니다. 다음에 변경하고 다른 테스트를 실행해야합니다.
아마도 그것은 CI가 의도 된 방식이 아니라 여전히 사용될 수 있습니다.
확실하게 단일 테스트를 실행하는 방법 에 대한 문서를 읽었다 고 가정합니다 . 그들이 당신에게 말하지 않는 것은 서브 모듈에서 그것을 수행하는 방법입니다.
mvn test -Dtest=testname -pl subproject
subproject
해당 테스트가 포함 된 프로젝트는 어디에 있습니까 ? mvn man 페이지에서 :
-pl,-projects arg 모든 프로젝트 대신 빌드 할 지정된 리액터 프로젝트의 쉼표로 구분 된 목록입니다. 프로젝트는 [groupId] : artifactId 또는 상대 경로로 지정할 수 있습니다.
내가 보는 다른 답변은 다른 하위 모듈에 의존하는 프로젝트에 대해 완전하지 않습니다. 한 가지 옵션은 mvn install
필수 jar를에 설치 하도록 실행 하는 ~/.m2/...
것이지만 해당 옵션은 "깨끗한"것은 아닙니다.
다음 명령은 하위 모듈을 빌드하고 지정된 테스트 클래스 만 실행합니다. 이것은 부모 모듈 수준에서 실행됩니다. 또한 하위 모듈 이름을 지정할 필요가 없습니다.
mvn test -DfailIfNoTests=false -Dtest={test_class_name} -am
제쳐두고 이것은 mvn clean test -Dfa.....
. 나는 clean
테스트를 실행할 때 항상 달리는 습관이 있습니다.
References ..
-am
는 다른 모든 하위 모듈을 만듭니다.
-DfailIfNoTests=false
다른 모듈에서 테스트를 실행할 계획이 아니기 때문에 전체 프로세스가 실패하지 않습니다. 이미 모든 것을 구축하고
-pl
있으므로 옵션이 필요하지 않습니다.-am
테스트 할 모듈이 다른 프로젝트에 의존하는 경우 솔루션은 다음과 같이 명령을 변경하여 작동합니다.
mvn test -DfailIfNoTests=false -Dtest=testname -pl subproject
참조 : http://www.automatethebox.com/2015/12/some-helpful-commands-to-build-multi.html
참조 URL : https://stackoverflow.com/questions/11869762/maven-run-only-single-test-in-multi-module-project
'programing' 카테고리의 다른 글
Oracle에서 개행 문자를 입력하는 방법은 무엇입니까? (0) | 2021.01.18 |
---|---|
Doctrine 2 DQL에서 now ()를 어떻게 사용할 수 있습니까? (0) | 2021.01.18 |
프래그먼트 내에서 활동을 시작하려면 어떻게해야합니까? (0) | 2021.01.18 |
배열이 기본 유형입니까, 객체입니까 (또는 완전히 다른 것)? (0) | 2021.01.18 |
Launch Arguments를 사용하는 경우 Git에서 / xcuserdata /를 무시하는 것이 안전합니까? (0) | 2021.01.18 |