dirts
v1.0.0
Dirts는 의존성 주입 (DI) 메커니즘을 알고있는 정적 클래스 또는 방법 수준 회귀 테스트 선택 (RTS) 연구 도구입니다.
| 모조 | 설명 |
|---|---|
class_level_select | 클래스 수준 접근법을 사용하여 테스트를 선택하십시오 |
method_level_select | 메소드 레벨 접근법을 사용하여 테스트를 선택하십시오 |
| 모조 | 설명 |
|---|---|
class_level_graph | 클래스 수준 접근법에 의해 생성 된 그래프를 보여줍니다 |
method_level_graph | 메소드 수준 접근법에 의해 생성 된 그래프를 표시하십시오 |
| 모조 | 설명 |
|---|---|
clean | 임시 파일 및 디렉토리를 정리하십시오 |
| 옵션 | 설명 | 기본 |
|---|---|---|
logging | 로깅 레벨 ( java.util.logging.Level 의 값) | INFO |
useSpringExtension | 스프링에 의해 유발 된 종속성 분석 | false |
useGuiceExtension | Guice에 의해 유발 된 종속성 분석 | false |
useCDIExtension | CDI에 의해 유도 된 종속성 분석 | false |
| 옵션 | 설명 | 기본 |
|---|---|---|
standalone | 독립형 모드로 실행 - 존재하지 않으면 Dirts는 다른 RTS -Tool이 이미 excludesFile 에서 일부 테스트를 제외했을 것으로 예상합니다. | false |
overrideExtension | standalone=false 와 함께 Behave Like 도구는 독립형을 실행하지만 DI 관련 변경의 영향을받는 테스트 만 제외합니다. | false |
| 옵션 | 설명 | 기본 |
|---|---|---|
toFile | stdout에 인쇄하는 대신 파일 시스템에 그래프 표현을 저장 | false |
outputFile | toFile 이 true로 설정된 경우 그래프가 저장되는 파일의 이름 | [class|method]_level |
standalone=true 지정하여 DIRTS는 RTS 용으로 완전히 독립형으로 사용할 수 있습니다.
더스는 또한 다른 RTS 도구 후에 실행하는 데 사용될 수 있으며 DI 관련 변경에 의해 영향을받는 테스트에 대해서만 수정 될 수 있습니다. 다른 도구는 SureFire의 excludesFile 속성으로 지정된 파일의 테스트를 제외해야합니다. 다른 RTS 도구를 따라 달리기가 필요하고 DI 관련 변경의 영향을받는 테스트를 언급하지만 이전에는 제외 된 테스트를 언급합니다. 이것은 더러움의 기본 동작입니다.
더스는 Maven Surefire와 함께 사용되도록 만들어졌습니다. Maven 프로젝트에서 먼지를 사용하는 가장 간단한 방법은 Dirts Maven 플러그인을 통한 것입니다.
< plugin >
< groupId >edu.tum.sse.dirts</ groupId >
< artifactId >dirts-maven-plugin</ artifactId >
< version >${dirts.version}</ version >
< configuration >
...
</ configuration >
</ plugin >excludesFile -Property는 모든 하위 모듈에 이상적으로 별도로 설정해야합니다. 그렇지 않으면 테스트 제외가 작동하지 않습니다.useSpringExtension )을 true 로 설정하여 활성화되어야합니다.Dirts가 일반 소스 코드를 분석하더라도 특정 모듈 간 종속성의 경우 선택 절차를 실행하기 전에 컴파일해야 할 수도 있습니다.
$ mvn compile dirts:class_level_select test 먼지는이 모듈 목록을 가장 바깥 모듈 폴더 내부에서 .dirts/affected_modules 로 작성합니다.
$ mvn dirts:class_level_select
$ mvn -am -pl " $( cat .dirts/affected_modules ) " test$ mvn dirts:class_level_select$ mvn compile dirts:class_level_select test$ mvn dirts:class_level_select
$ mvn -am -pl " $( cat .dirts/affected_modules ) " test 더러움을 구축하려면 단순히 실행됩니다.
$ mvn clean install이렇게하면 모든 모듈에 대한 코드를 작성하고 모든 테스트를 실행하며 항아리를 로컬 Maven 저장소에 설치합니다.