代码、函数级测试一般由白盒测试人员完成,他们针对每段代码或函数进行正确性检验,检查其是否正确的实现了规定的功能。

2.1.1 androidTest测试类
androidTest测试类适用于需要依赖Android api的单元测试,需要连接Android设备才能进行测试。新建的androidTest java类需要添加@RunWith(AndroidJUnit4.class)注解,类的方法如果是测试入口方法需要添加@Test注解。示例代码:
package com.xiaoying.untitestdemo;
import android.content.Context;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.support.test.InstrumentationRegistry;
import org.junit.Before;
import org.junit.Test;
import static org.junit.Assert.assertEquals;
/**
* Created by yinglovezhuzhu@gmail.com on 2018/5/13.
*/
public class MainActivityTest {
private Context mTargetContext;
@Before
public void setUp() throws Exception {
mTargetContext = InstrumentationRegistry.getTargetContext();
}
@Test
public void onCreate() {
try {
ApplicationInfo applicationInfo = mTargetContext.getPackageManager().getApplicationInfo(mTargetContext.getPackageName(), PackageManager.GET_META_DATA);
Bundle metaData = applicationInfo.metaData;
String data = metaData.getString("com.xiaoying.TEST");
assertEquals("1234567890", data);
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}
}
}
2.1.2 test测试类
test测试类适用于纯java的单元测试,运行于当前设备的jvm环境中,无需Android设备即可测试。新建test java类,类的方法如果是测试入口方法需要添加@Test注解。junit使用教程
代码示例:
package com.xiaoying.untitestdemo;
import org.junit.Before;
import org.junit.Test;
import static org.junit.Assert.*;
/**
* Created by yinglovezhuzhu@gmail.com on 2018/5/13.
*/
public class UtilsTest {
@Before
public void setUp() throws Exception {
}
@Test
public void isEmpty() {
assertEquals(true, Utils.isEmpty(""));
}
}
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-89247-2.html