码迷,mamicode.com
首页 > 移动开发 > 详细

Android Studio使用AndroidJUnitRunner进行单元测试

时间:2015-08-10 22:21:29      阅读:389      评论:0      收藏:0      [点我收藏+]

标签:

目前google是推荐使用AndroidJUnitRunner来进行单元测试的。

如果想使用InstrumentationTestRunner进行单元测试,推荐下面的一篇文章:

http://blog.csdn.net/zhaokaiqiang1992/article/details/45332513


使用AndroidJUnitRunner进行测试的时候,需要做在build.gradle里面添加如下代码:

defaultConfig {
        // ......
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
dependencies {
    // ......
    androidTestCompile 'com.android.support.test:runner:0.3'
}


这句话testInstrumentationRunner表明要使用AndroidJUnitRunner进行单元测试,如果这句话没有写很可能引起如下错误:

junit.framework.AssertionFailedError: No tests found in andriodjunit.robot.com.andriodjunitrunner.CalcTest


技术分享

而androidTestCompile ‘com.android.support.test:runner:0.3‘表明的是引用相关的库,当没有添加这个话的时候,我们的External Libraries如图:

技术分享

加入了之后,如图:

技术分享

从这里我们可以看到由于添加runner:0.3之后,会自动添加juint库无需我们再添加juint库了。

这些基本工作完成了之后,开始我们的单元测试的代码了。


在src/main/java/xxx相对应的包里面添加文件:

public class Calc {
    public int sum(int a, int b) {
        return a + b;
    }
    public int sub(int a, int b) {
        return a - b;
    }
}


选中此类,点击右键,如图:


技术分享


下一步:

技术分享



生成如下代码:

public class CalcTest {

    @Test
    public void testSum() throws Exception {
    }

    @Test
    public void testSub() throws Exception {
    }
}
然后就是简单的使用JUnit4进行单元测试了,先添加测试的代码:

public class CalcTest {

    @Test
    public void testSum() throws Exception {
        Calc calc = new Calc();
        assertEquals(6, calc.sum(2, 4));
    }

    @Test
    public void testSub() throws Exception {
        Calc calc = new Calc();
        assertEquals(9, calc.sub(2, 4));
    }
}


选择CalcTest类,点击右键:

技术分享


运行结果如图:

技术分享


这样子就完成了使用AndroidJUnitRunner进行简单的单元测试了,如果需要对界面(Activity)进行单元测试,需要引入espresso了。

这里就不再说明了,具体请参考上一篇文章。

版权声明:本文为博主原创文章,未经博主允许不得转载。

Android Studio使用AndroidJUnitRunner进行单元测试

标签:

原文地址:http://blog.csdn.net/zhuhai__yizhi/article/details/47403723

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!