마침내 JUnit4를 사용하여 각 테스트 자동화마다 @Category
을 실행했습니다. PriorityHigh
, PriorityMedium
또는 PriorityLow
으로 표시됩니다. 다음 플러그인 섹션에서 사용되는명령 줄에 여러 Maven 프로필을 지정하여 스택 등록 정보
<profile>
<id>PriorityHigh</id>
<properties>
<testcase.category>com.categories.PriorityHigh</testcase.category>
</properties>
</profile>
<profile>
<id>PriorityMedium</id>
<properties>
<testcase.category>com.categories.PriorityMedium</testcase.category>
</properties>
</profile>
<profile>
<id>PriorityLow</id>
<properties>
<testcase.category>com.categories.PriorityLow</testcase.category>
</properties>
</profile>
이 : 나는 중간 모두를 테스트 할 때
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${surefire.version}</version>
<configuration>
<groups>${testcase.category}</groups>
<systemPropertyVariables>
<automation.driver>${browser.name}</automation.driver>
</systemPropertyVariables>
</configuration>
</plugin>
내 문제는 내가 각각 프로파일로 설정 한 내 pom.xml
에서
높음, 지정 함
-P PriorityHigh,PriorityMedium
하지만 추가/연결하는 대신 덮어 쓰기 때문에 onl y 중간 테스트가 실행됩니다. pom.xml
은 $ {testcase.category}의 프로파일 만 존재 불평 때문에, 여분의 어려움을 추가하지 않고 기본값으로,이를 추가했다 :
<testcase.category>com.categories.PriorityHigh,com.categories.PriorityMedium,com.categories.PriorityLow</testcase.category>
이 경우에는 프로파일이 지정되지 않습니다.
그래서 두 가지 질문 :
- 어떻게 프로파일은 "그룹"노드에서 제대로 쌓아 갈 수있는?
- 프로필이 지정되지 않은 경우 (모든 테스트가 실행되어야 함) 더 나은 방법으로 작업 할 수 있습니까? 당신이 완전히 지정해야하지 않으려면
mvn verify -Dtestcase.category=com.categories.PriorityHigh # runs PriorityHigh tests mvn verify -Dtestcase.category=com.categories.PriorityHigh,com.categories.PriorityLow # runs PriorityHigh and PriorityLow tests mvn verify # runs PriorityHigh and PriorityLow tests
: 다음
<properties> <testcase.category>com.categories.PriorityHigh,com.categories.PriorityLow</testcase.category> </properties> ... <plugin> <artifactId>maven-surefire-plugin</artifactId> <version>2.19.1</version> <configuration> <groups>${testcase.category}</groups> ... </configuration> </plugin>
: 할
고맙습니다! 훨씬 간단한 솔루션. 필자의 유일한 불만은 Build Helper 플러그인을 사용할 때 fq.testcase.name이 IDE에서 값으로 인식되지 않으므로 항상 오류 값을 표시한다는 것입니다. 코드는 여전히 컴파일되고 테스트는 계속 실행되지만 나에 대한 강박증은 이름이 빨간색으로 들리지 않습니다. – MivaScott
IDE를 속이려면 ''섹션에 빈 값 또는 임의의 값으로 추가하십시오. –
ryanp
어떤 이유인지, 빈 속성을 추가하면 카테고리가 중지됩니다 일. 즉, 우선 순위에 관계없이 모든 테스트를 실행합니다. – MivaScott