2017-11-20 1 views
0

여러 테스트 클래스에 걸쳐있는 DB 연결을 처리하기 위해 TestSuite를 사용하고 있습니다. 이 테스트는 독립 실행 형 TestSuite로 실행될 때 모두 통과됩니다. 그러나 Gradle을 통해 실행될 때 TestSuite 대신 개별 테스트 클래스가 실행됩니다.Gradle이 JacocoTestReport로 JUnit TestSuite를 실행합니다.

각 테스트 클래스를 건너 뛰고 대신 TestSuite를 포함하도록 Gradle에 어떻게 알릴 수 있습니까?

test { 
    filter { 
     include 'xxx/MasterSuite' 
     exclude '**/*ExcludeFromGradle.class' 
    } 

    jacoco { 
     jacocoTestReport { 
      [..] 

//==================== 
// Also tried this 

test { 
    filter { 
     includeTestsMatching "*MasterSuite" 
    } 
} 

그리고 제대로 컴파일되지 않은 JaCocoTaskExtension를 사용하여 유사한 디자인의 몇 가지 더 변화로 인해 내 부족 :

내가 시도 무엇 지금

jacoco { 
    toolVersion = "0.7.9" 
    reportsDir = file("jacoco") 
} 

// run with [test jacocoTestReport] 
jacocoTestReport { 
    reports { 
     xml.enabled false 
     csv.enabled false 
     html.destination file("jacoco/jacocoHtml") 
    } 

    afterEvaluate { 
     classDirectories = files(classDirectories.files.collect { 
      fileTree(dir: it, exclude: ['some_excluded_package/**']) 
     }) 
    } 
} 

이 무엇 이해.

지금. 내 'Mastersuite'TestSuite를 포함하고 'ExcludeFromGradle'클래스를 제외하도록이 기능을 어떻게 적용 할 수 있습니까?

답변

0

스위트 룸은 src/test/java입니까?

시도해 보셨습니까?

test { 
    include '**/MasterSuite.class' 
} 
+0

약간 조정하면 효과가있었습니다. 나는 그저 일찍 그것을 시도해 보았을 것임에 틀림 없다. 도움을 많이 주셔서 감사합니다. – Brenin

관련 문제