1 一般的測試
在工程目錄下有兩個文件夾,一個後面標有androidTest,在這個文件夾下面新建class,並使其繼承
InstrumentationTestCase這個類,然後重寫三個方法,第一個爲testXXX(),第二個爲setUp(),第三個爲tearDown(),
setUp()第一個被調用,然後會調用testXXX(),最後調用tearDown(),所以可以在setUp()裏做一些初始化,在testXXX()
裏面進行測試,在tearDown()裏面進行銷燬回收等操作
public class ClassTest extends InstrumentationTestCase { public void test() throws Exception { Log.v("----->", "Class-test"); } @Override protected void setUp() throws Exception { super.setUp(); Log.v("----->", "Class-setUp"); } @Override protected void tearDown() throws Exception { super.tearDown(); Log.v("----->", "Class-tearDown"); } }
2 Activity的測試
這裏跟一般的測試不同之處在於需要繼承
ActivityInstrumentationTestCase2<TestActivity> 這個類,尖括號中爲你想測試的Activity的類名,他會提示你重寫構造
方法,但是一定要實現一個無參數的構造方法,然後使用getActivity()就可以獲取你要測試的Activity的對象,從而對這個Activity進行
測試
public class ActivityTest extends ActivityInstrumentationTestCase2<TestActivity> { //必須要有一個無參的構造方法 public ActivityTest() { super(TestActivity.class); } public void test() throws Exception { Log.v("----->", "Activity-test"); TextView textView = getActivity().textView; Log.d("----->", textView.getText().toString()); } @Override public void setUp() throws Exception { super.setUp(); Log.v("----->", "Activity-setUp"); } @Override public void tearDown() throws Exception { super.tearDown(); Log.v("----->", "Activity-tearDown"); } }這兩步坐完之後就可以,然後,選擇+號,
之後選擇apply後再選擇ok,然後在選擇Test運行即可
,結果:
在這裏你也可以選擇某一個文件夾下的(package),或某一個class進行測試