android 单元测试
|
<! – 添加InstrumentationTestRunner ,targetPackage修改成你的测试工程的包名即可-->
<instrumentation
android:name="android.test.InstrumentationTestRunner"
android:targetPackage="com.example.umengsocialtest" />
<! – application 添加test runner -->
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<! – 添加test runner -->
<uses-library android:name="android.test.runner" />
</application>
|
|
public class MockActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
|
|
public class UMAppAdapterTest extends ActivityInstrumentationTestCase2<MockActivity> {
/**
*
*/
private Activity mActivity = null;
/**
*
*/
private UMBaseAdapter mAdapter = null;
/**
* @Title: UMAppAdapterTest
* @Description:
* UMAppAdapterTest Constructor
*
* @param activityClass
*/
public UMAppAdapterTest(Class<MockActivity> activityClass) {
super(activityClass);
}
public UMAppAdapterTest() {
super(MockActivity.class);
setName("MockActivity");
}
@Before
protected void setUp() throws Exception {
super.setUp();
mActivity = getActivity();
assertNotNull(mActivity);
}
@After
protected void tearDown() throws Exception {
super.tearDown();
mActivity = null;
clearState();
}
@Test
public void testGetBitmap() {
mAdapter = new UMAppAdapter(mActivity);
// 实际会触发截屏操作,返回当前截屏
assertNotNull(mAdapter.getBitmap());
// 使用控制器来截图, 实际上调用的是mAdapter.getBitmap()
UMScrShotController controller = UMScrShotController.getInstance();
controller.setAdapter(mAdapter);
assertNotNull(controller.takeScreenShot());
}
}
|






