나는 gradle 프로젝트의 형태로 안드로이드 구성 요소를 구축하고 있습니다. espresso 프레임 워크를 사용하여 여러 구성에서 구성 요소 UI를 테스트하려면 소스 세트에 TestActivity
이 있어야합니다. androidTest와 테스트 사이에 공유 코드 구성
src/
androidTest/
java/my.package/
TestActivity.kt
...
res/layout/
my_test_activitity.xml
test/
java/my.package/
MyUnitTests.kt
지금 내 단위 테스트의 일부 robolectric을 사용하기 시작하고 또한 거기에서 내 TestActivity
을 테스트 할 수 있습니다. 흥미롭게도 , 안드로이드 스튜디오는 불평하지 않는 경우 MyUnitTests.kt
에서 나는 설정 Robolectric :
val activity = Robolectric.setupActivity(TestActivity::class.java) // no error
, I는 단위 테스트를 실행하려고하면, Gradle을이 오류로 날 제시 :
e: src/test/java/my.package/MyUnitTests.kt: Unresolved reference: TestActivity
내 소스가 test
소스 세트는 androidTest
소스 세트에 액세스 할 수 없다고 추측됩니다.
어떻게하면 되나요? test
에서 androidTest
의 클래스와 리소스를 수정할 수 있습니까? 계측 테스트와 단위 테스트간에 코드를 공유 할 때 올바른 방법일까요? 아니면 더 좋은 방법이 있습니까?