2011-09-22 8 views
3

Android에서 재사용하고 싶은 Junit 3 테스트의 라이브러리가 있습니다. 문제는이 테스트가 현재 존재하는 파일 (테스트 데이터)에 의존한다는 것입니다.Android에서 junit 테스트 재사용

Android의 경우 이는 일부 설정 코드가 getContext().getAssets()을 호출하고 자산 파일을 sdcard에 덤프해야한다는 것을 의미합니다. 여기서 자산 파일은 테스트에서 선택됩니다.

문제는 다음과 같습니다.이 설치 코드는 어디에 두어야합니까? TestCase에서 상속 받았기 때문에 테스트의 설정에 넣을 수 없습니다. 어쨌든 더 이상 이식성이 없음을 의미합니다. TestSuite에서 상속받은대로 AllTest 패키지에 넣을 수 없습니다. 그것의 Junit 프로젝트 이후로 나는 onCreate를 사용할 수있는 활동이 없습니다.

답변

2

해결책은 맞춤형으로 만드는 것입니다. InstrumentationTestRunner. onCreate를 재정 의하여 사용자 정의 설치 논리를 저장할 수 있습니다. 예 :

public class InstrumentationTestRunner extends 
     android.test.InstrumentationTestRunner { 

    @Override 
    public void onCreate(Bundle arguments) { 
     setUpTests(); 
     super.onCreate(arguments);  
    } 

    protected void setUpTests() { 
     // .... 
    } 
}