2014-11-18 6 views
7

내가 찾고 있던 큰 새로운 기능 IntelliJ 14.0.1 하나에 업그레이드 : 당신이 Gradle을 작업을 통해 테스트를 실행하면인 IntelliJ (14) Gradle을 작업은

"는 IDE는 대신 당신에게 표준 테스트 러너를 제공합니다 . 콘솔 출력 "(출처 : https://www.jetbrains.com/idea/whatsnew/#buildTools)

내가 바로 우리의 통합 테스트를 실행하려면 Gradle을 작업 클릭 :

enter image description here

enter image description here

사람이 일을하게 IntelliJ IDEA (14)이 새로운 기능을 얻을 수 있었다 : 그러나, 나는 시험의 결과는 아직도 테스트 러너에 출력을 콘솔 것 보이지?

는 인 IntelliJ는 "테스트"가 아닌 유형 Test의 작업이라는 작업을 찾습니다처럼

+0

이 기능이 Android Studio 1.0에도 설치되어 있어야하는지 알고 싶습니다. 비록 내 작업의 이름이 "test"(Robolectric 및 android-unit-test-plugin 사용)이지만, 어쨌든 작동하지 않습니다. – Nilzor

답변

7

이 보이는, 사전에

필립을 주셔서 감사합니다. 당신은 단지 통합 테스트를 실행하려면

// Rename test to unitTest 
tasks.test.name = "unitTest" 

// Wrap and run both 
task test(dependsOn:['unitTest', 'integrationTest']) 

, 그냥 덮어 쓰기 :

https://github.com/JetBrains/intellij-community/blob/master/plugins/gradle/src/org/jetbrains/plugins/gradle/execution/test/runner/GradleTestsExecutionConsoleManager.java#L191

+0

와우, 그라우트 플러그인 소스 코드에 대한 심층적 인 연구에 감사드립니다. –

+0

그 것이었다. 당신의 대답은 정확하다. IntelliJ 14에서 "test"라는 Gradle 작업을 실행하고 테스트 러너를 시작한 것을 보았습니다. * 한숨이 더 유연 해져야한다고 생각합니다. 나는 Jetbrains로 티켓을 열었습니다. –

+0

@PhilipTenn 티켓에 대한 링크를 제공해 주시겠습니까? 나는 그것을 upvote 싶다. –

0

모두 unitTesttest 작업의 이름을 변경 한 후 실행하는 랩퍼를 작성

task test(overwrite: true, dependsOn: ['integrationTest']) 

이렇게하면 테스트 러너에서 통합 테스트를 성공적으로 실행할 수 있습니다 (적어도 IDEA 15 EAP에서 작동하지만 적어도 rk in 14뿐만 아니라 나는 생각할 것이다).

0

여전히 IntelliJ 2017.1에서 그래도 얻을 수 있지만 특히 gradle buildSrc 디렉토리에서 테스트를 실행할 때 그렇습니다. 잠시 파고 들자 Gradle API는 특별한 buildSrc 디렉토리의 테스트 작업을 Intellij에 노출시키지 않으므로 IntelliJ는이를 테스트로 인식하지 못합니다.

해결 방법 : buildSrc 디렉토리의 다른 IntellIJ 프로젝트를 루트 프로젝트에서 완전히 테스트하지 말고 엽니 다.