2014-10-03 7 views
1

나는 app 프로젝트와 종속성 android 라이브러리 프로젝트로 구성된 android 스튜디오의 작업 영역을 가지고 있습니다.Android Studio Robolectric 리소스 폴더

나는 app 프로젝트 리소스와 의존성 라이브러리 프로젝트 리소스에서 문자열을로드하는 클래스를 테스트하는 단위 테스트를 app 프로젝트에 가지고 있습니다.

Roboletric에서 단위 테스트를 실행할 때 테스트 된 클래스가 라이브러리 프로젝트 리소스에서 문자열을로드하려고 할 때 리소스를 찾을 수 없습니다. 예외가 발생합니다.

이 문제를 해결하는 방법은 무엇입니까? Robolectric이 사용할 app 및 종속 라이브러리 리소스 디렉토리를 어떻게 지정합니까?

+0

수정 1 - 리소스를 'duplications-for-tests.xml'파일의 app 폴더에 복사합니다. 수정 2 - 자신의 테스트 러너를 오버라이드하고 제공하면 "매니페스트"를 지정하고 리소스를 찾을 위치를 robolectric에 알릴 수 있습니다. – Blundell

+0

두 옵션을 자세히 설명해 주시겠습니까? 나는 자원을 복사 할 수 없다. 그들과 많은 사람들이 서로 다른 두 개의 프로젝트에있다. 이것은 단순히 확장되지 않습니다. 사용자 정의 테스트 러너에 관해서는 체크 한 부분은 하나의 리소스 위치 만 사용하고 리소스는 두 개의 프로젝트에 있습니다. – user1744147

+0

나는 이것에 대한 해결책을 찾고있다. –

답변

0
android { 
    testOptions { 
    unitTests { 
     includeAndroidResources = true 
    } 
    } 
} 

은/build.gradle 나를 위해 자원을로드하기 위해 선호하는 옵션이 될 것으로 보인다.