ActivityInstrumentationTestCase2 主要用来测试一个或多个Activity的功能测试,使用和最终应用同样的运行环境来测试Activity的功能。可以使用正常系统Context (非Mock)来测试Activity的功能。 并允许你创建一些Mock Intent 用来测试Activity的响应。要注意的是,这种TestCase不允许使用Mock的Context和Application对象测试,也就是说你必须使用和应用程序实际运行的环境来测试。
ActivityInstrumentationTestCase2 的继承关系如下图所示:
它的getActivity() 方法可以取得被测试的Activity的实例对象。
ApiDemosTest 的代码如下:
- public class ApiDemosTest
- extends ActivityInstrumentationTestCase2<ApiDemos> {
- public ApiDemosTest() {
- super(ApiDemos.class);
- }
- public void testActivityTestCaseSetUpProperly() {
- assertNotNull("activity should be launched successfully",
- getActivity());
- }
- }
测试方法testActivityTestCaseSetUpProperly 使用getActivity() ,主要目的是测试本测试的Activity能否正常启动,测试getActivity() 是否非空。
此外ActivityInstrumentationTestCase2 还提供了两个方法: