Android Studio里的单元测试

背景

之前一直想看一下安卓里的单元测试,如今记录一下学习过程,内容并不多,因为Android Studio已经给我们做好了大部分工作,gradle导包、清单文件中引入都不用我们管了,直接创建类、创建方法就可以


Java单元测试

在test目录下,随便新建一个类



而后随便定义一个方法,但要用上@Test注解,里面写上我们要测试的东西

public class MyTest {
    @Test
    public void myTest() {
        ArrayList<Integer> arrayList = new ArrayList<>();
        arrayList.addAll(Arrays.asList(1,3,2,7,4));
        System.out.println(arrayList);
    }
}

而后点击左边的绿色箭头,因为之前我测试过了,所以绿色箭头变成了绿色重启的标志,点它就是,而后在出来的对话框里,选择run



之后就会在下面,显示输出内容了



Android单元测试

Android单元测试和java单元测试差不多,同样是要新建一个类,但这里是在上面的androidTest目录中,而且新建的类要继承自InstrumentationTestCase,而后要测试的方法不用加上@Test注解,但要以test开头

public class TestClass extends InstrumentationTestCase { // 继承自IntrumentationTestCase
    public static final String TAG = "TestClass";

    public void testMethod() { // 方法以test打头
        List<String> letters = new LinkedList<>();
        letters.add("a");
        letters.add("b");
        letters.add("c");
        letters.add("d");
        letters.add("e");
        letters.add("f");

        //parallelStream():并行流
        letters.parallelStream().filter(s -> {
            Log.i(TAG, "filter:" + s + "--thread name:" + Thread.currentThread().getName());
            return true;
        }).map(s -> {
            Log.i(TAG, "map:" + s + "--thread name:" + Thread.currentThread().getName());
            return s.toUpperCase();
        }).forEach(s -> {
            Log.i(TAG, "forEach:" + s + "--thread name:" + Thread.currentThread().getName());
        });
        //D A C E B F
        //D B C E A F
        //D F E A B C
        //...随机运行

        letters.stream().forEach(s -> {
            Log.i(TAG, "forEach:" + s);
        });
    }
}

而后也是点击左边的运行按钮,选择运行设备



看到下面显示test passed,就说明运行成功了,查看结果是在logcat里面查看




结语

不过,我觉得安卓开发还是通过把项目跑起来调试的方式测试直接一些

猜你喜欢

转载自blog.csdn.net/qq_37475168/article/details/80839298