Android 自带的 junit单元测试的一些测试类(androidTest测试 需要运行在模拟机或真机上)
1、InstrumentationTestCase框架:
Instrumentation和Activity有点类似,只不过Activity是需要一个界面的,而Instrumentation并不是这样的,我们可以将它理解为一种没有图形界面的,具有启动能力的,用于监控其他类(用Target Package声明)的工具类。
举个例子,利用InstrumentationTestCase 启动一个activity:
在androidTest下新建一个java类,并且继承自InstrumentationTestCase编写一个public void的方法,但是必须要是方法名以test打头,比如testPublishSubject,并不需要@Test注解
?
1
2
3
4
5
6
7
8
public class TestSubject extends InstrumentationTestCase {
private static final String LOG_TAG = "test";
public void testPublishSubject() {
launchActivity("demo.zts.com.demo",SecondActivity.class,null);
}
}
2、ApplicationTestCase——测试整个应用程序的类。它允许你注入一个模拟的Context到应用程序中,在应用程序启动之前初始化测试参数,并在应用程序结束之后销毁之前检查应用程序。
使用Context,你可以浏览资源,文件,数据库等等。基类是AndroidTestCase,一般常见的是它的子类,和特定组件关联。
测试代码如下:
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class MyApp extends Application {
@Override
public void onCreate() {
super.onCreate();