测试:
按岗位划分:
黑盒测试
* 测试逻辑业务
* 白盒测试
* 测试逻辑方法
* 根据测试粒度
* 方法测试:function test
* 单元测试:unit test
* 集成测试:integration test
* 系统测试:system test
- 根据测试暴力程度
- 冒烟测试:smoke test
- 压力测试:pressure test
单元测试
需要继承androidtestcase 无需实现里面的方法
- junit
- 在安卓清单文件中指定指令集
<instrumentation
android:name="android.test.InstrumentationTestRunner"
//指定要测试的项目
android:targetPackage="com.example.testdemo"
></instrumentation>
注意测试框架定义在哪里跟测试项目是没有关系的, 测试哪个项目由目标包名决定。targetPackage
在清单文件中加入使用类库:
<uses-library android:name="android.test.runner"
instrumentation指令集定义的位置和applicaton同级节点 位于其上方 ,使用类库use—library 和activity同级节点位于其上方。
assert(断言)
//断言检测实际值和预期值是否相等
assertEquals(expected, actual);
assertEquals(expected,actual) 这个只能用于具体返回值的情况,
public class utils {
public static int add (int a,int b){
return a+b;
}
public static void divide(int a, int b){
int result= a/b;
}
}
import Junit.utils;
import android.test.AndroidTestCase;
public class TestCase extends AndroidTestCase {
public void test() {
int result = utils.add(3, 5);
assertEquals(8, result);
}
public void test1(){
utils.divide(2, 0);
}
}
测试框架使用时不用启动整个项目,就可以测试局部的某个方法执行的正确性。