请选择 进入手机版 | 继续访问电脑版
设为首页收藏本站

Android Studio 中文社区论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索
热搜: Android Sdk Gradle
查看: 100|回复: 0

[WINDOWS] Android单元测试怎么做

[复制链接]

31

主题

29

帖子

109

积分

注册会员

Rank: 2

积分
109
发表于 2016-7-7 14:07:49 | 显示全部楼层 |阅读模式
今天给大家分享一篇单元测试教程。Android的单元测试有两种方式:本地单元测试和设备单元测试,本地单元测试可以直接运行在本地机器上面的Java Virtual Machine(JVM)上面。它的特点是运行时间短,执行效率高,但是不依赖Android framework,每个文件都可以进行单独的测试。
运行在设备上的单元测试,运行的是一个单独的APK,直接运行到虚拟机或者设备上,这种单元测试拥有整个App的生命周期和运行环境。
这里主要介绍运行设备上的单元测试为主。
测试文件在哪?
下面是一个Android项目的基本结构:
QQ截图20160518203058.png   
Android项目结构
其中../app/src/test/java目录下是本地单元测试的文件目录。
../app/src/androidTest/java目录下就是设备单元测试的文件目录。
配置测试环境
首先需要引入单元测试的依赖库,在AndroidManifest.xml里面添加uses-library:
    <application
        .....
        <uses-library android:name="android.test.runner"/>
    </application>
配置单元测试框架的启动项:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.jjz">

      <instrumentation android:name="android.test.InstrumentationTestRunner"
        android:targetPackage="com.jjz"
        android:label="test"/>
</manifest>
android.test.InstrumentationTestRunner是Android单元测试其中的一个启动项,用来启动单元测试。
com.android.test.runner.MultiDexTestRunner是另一个单元测试的启动项用来启动MultiDex的项目。
设置android:targetPackage与项目的package相同,这样当前单元测试的运行和应用程序是在一个进程里面。
编写测试代码
在项目中增加一个方法用来比较两个字符串的是否相等,在对该方法进行做单元测试:
public class StringUtil {
    public static boolean compare(String source, String other) {
        if (source == null) {
            return other == null;
        } else {
            return source.equals(other);
        }

    }
}
增加方法compare的单元测试代码,在../app/src/androidTest/java/com.jjz添加文件StringUtilTest.java。
public class StringUtilTest extends AndroidTestCase {

    public void testCompare() {
        Assert.assertFalse(StringUtil.compare(null,"123"));
        Assert.assertTrue(StringUtil.compare("123","123"));
    }
}
需要注意的是类名必须使用Test结尾,需要继承AndroidTestCase,单元测试的方法需要使用test开头。
运行
在../app/androidTest/java文件夹上面,可以看到运行单元测试的按钮:
QQ截图20160518203122.png   
Run all tests

直接点击Run all tests,可以看到运行单元测试的结果:
QQ截图20160518204104.png   
测试结果


原文来自:简书/姜家志
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

AndroidStudio中文社区 ( 京ICP备06021553号 )  

资源: 安卓 | Android | 社区 | 问答 | 培训 | 人才 | 招聘 | YotaPhone | VisualStudio

© 2013-2014 Android Studio

快速回复 返回顶部 返回列表