Android Studio已经到了1.2版本,国内的开发者基本也在从Eclipse向Android Studio进行转变,对于Android开发者,以后必将是Android Studio的天下。

昨天在完善煎蛋项目的时候,需要进行单元测试,在Eclipse环境中进行是很简单的,但是在Android Studio环境中进行单元测试,我还没有尝试过,在国内找了很多资料,大都是人云亦云,也没有测试成功,然后在这篇文章的指导下成功运行,特此翻译,供大家学习参考。

这篇文章介绍了在Android Studio中进行单元测试的基础部分。

在Android Studio中可以进行单元测试

很多的文章指导你应该在“build.gradle” 文件里面添加几行代码从而允许单元测试,并且告诉你应该在项目依赖中添加Android测试库。

其实你并不需要按照这种错误的方式去做,因为这是完全没有必要的。

Android Studio本身就支持Android单元测试,你只需要在你的项目中配置一下就可以了。

注意:还有好几种广受欢迎的Android单元测试框架,比如Robolectric,它们比我在这里提到的需要更多的配置,我希望在未来可以以这个题目再写一些指导文章。

创建你的单元测试文件夹

我喜欢把单元测试放在我的主项目里面,比如“com.mypath.tests.”

,你可以把测试目录放到你想要的地方。开始之前,像下面这样,先创建你的测试文件夹。(译者注:这一步不是必须的,你也可以把单元测试类创建在与

Android Studio默认的ApplicationTest类相同的路径下面)

接下来,创建一个叫做 “ExampleTest”的类,要继承自InstrumentationTestCase

然后可以添加一段简单的测试代码,我们知道这段代码肯定会运行失败public class ExampleTest extends InstrumentationTestCase {

public void test() throws Exception {

final int expected = 1;

final int reality = 5;

assertEquals(expected, reality);

}

}

注意:所有的测试方法必须以"test"开头,否则Android Studio不能找到要进行单元测试的方法,你将会得到各种各样的错误,并且无法正常执行。

为你的项目配置单元测试

现在我们已经有了一个必然会运行失败的测试用例,我们必须把它run起来。

首先点击"Run-> Edit Configurations"

然后点击“+”,从左上角选择添加一个 Android Tests,然后你可以将这个测试配置重新命名为"test"或与之相关的名字

然后就会创建如下的测试项目配置

从下拉菜单中选择你当前的module

接下来,选择"All in Package"选项,然后把你的刚才创建的测试文件夹选中。你也可以选择“All in

Module”选项,这样Android

Studio会自动的找到你整个Module中的所有测试单元,你也可以通过更具体的类或者是方法选项,进一步缩小测试范围。

The results should look like this:

做完这一切之后,看起来应该像下面这样

我也喜欢选中下面的“Show chooser dialog”,这样当每次运行的时候,我可以指定如何去运行

现在点击"Apply"然后关闭,你现在应该可以看到你的测试案例已经作为一个可以运行的项目配置在Android Studio上面的工具栏上了

运行我们的单元测试

我使用Genymotion来完成所有的事情,所以开启你的Genymotion然后运行test

在assertion这一行添加一个断点,然后点击 “run debug mode”,目的是为了证明Android Studio确实执行了我们的单元测试。

当你开始你的测试工程之后,你会看到一个叫做“Running Tests…”的显示窗口

当你的测试没有通过,点击“Logcat”然后查看综合的输出结果,看下我们测试失败的原因

通过控制台,可以看到打印出的错误原因:“junit.framework.AssertionFailedError: expected:<1> but was:<5>”

恭喜你,你已经成功测试出错误啦~

下面的这些资料在完成本文时,给了很大的帮助

android studio 测试工具,使用Android Studio进行单元测试相关推荐

  1. 【Android 逆向】Android 进程注入工具开发 ( Visual Studio 开发 Android NDK 应用 | Visual Studio 中 SDK 和 NDK 安装位置 )

    文章目录 一.Visual Studio 中安装 " 使用 C++ 的移动开发 " 开发库 二.Visual Studio 中安装的 Android SDK 和 NDK 位置 三. ...

  2. [原创]Android Monkey测试工具使用介绍

    [原创]Android Monkey测试工具使用介绍 1 Android Monkey介绍 Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件 ...

  3. 测试android兼容性测试工具,Android兼容性测试工具Spoon

    android分布式测试工具. 简介 android众多的版本和机型给android app测试工作带来不小的挑战.Spoon通过将case分布式地执行.将执行结果更友好地展示出来,从而简化andro ...

  4. Android 基本测试工具的使用

    Android 基本测试工具的使用和无线学习介绍 1,日志查看工具 1)DDMS Android测试中,使用最多的日志查看工具就是DDMS了. ddms可以从两个地方打开,1,Eclipse的的ddm ...

  5. Android测试solo,SoloPi支付宝开源的 Android 专项测试工具的介绍与快速上手

    SoloPi支付宝开源的 Android 专项测试工具的介绍与快速上手 SoloPi:支付宝开源的 Android 专项测试工具的介绍与快速上手 MTSC2019大会上,Soloπ算是一次正式的在公众 ...

  6. MTK CVE-2020-0069 使用方式,以及Android端测试工具

    本文章主要分两部分 1.漏洞说明 2.Android端测试应用和工具,用于测试机型是否受到影响 谷歌在2020年3月的Android安全公告中提到,新更新已经提供了CVE-2020-0069补丁来解决 ...

  7. Android 通过串口获取设备号 android串口测试工具 完整解析

    前言 android 工业平板RK3399-all 调试有关串口的设备 如何获取对应的串口设备及串口名字 先来一张图说明 获取串口 SerialPortFinder mSerialPortFinder ...

  8. 【Android 命令行工具】Android 命令行工具简介 ( 官方文档 | SDK 命令行工具 | SDK 构建工具 | SDK 平台工具 | 模拟器工具 | Jetifier 工具 )

    文章目录 一.官方文档 二.Android 命令行工具简介 1.SDK 命令行工具 2.SDK 构建工具 3.SDK 平台工具 4.模拟器工具 5.Jetifier 工具 一.官方文档 Android ...

  9. Soloπ:支付宝开源的Android专项测试工具

    1.前言 近年来,随着移动互联网的蓬勃发展,移动测试技术也取得了长足的进步,从早期基于测试脚本的单机自动化,到录制回放.图像识别.云测平台等测试技术贴合实际业务需求深度应用和创新,测试效率从而一次又一 ...

最新文章

  1. 这样设计订单系统,同事直呼 666!
  2. AutoShape:实时形状感知的单目3D目标检测(ICCV2021)
  3. 电商系统设计之商品(下)
  4. 【图像分割应用】设备自动化(一)——自动驾驶
  5. el-tree 权限 勾选_一周新债总结,最高涨30%,10月26日起可转债交易需要先开权限...
  6. linux 下安装部署mq,RocketMQ在linux下安装部署
  7. C++基础03-C++对c的拓展-函数
  8. Error creating bean with name 'dataSource' defined in class path resource [spring/spring-dao.xml]:
  9. 《设计模式详解》软件设计原则
  10. 排队论模型的monteCarlo法仿真
  11. 美团一面:两个有序的数组,如何高效合并成一个有序数组?
  12. 关于switch软破“由于发生错误,软件已关闭”无法升级主机系统等问题
  13. [Day 1]上海CNUTCon全球运维技术大会2017实录
  14. ailess给您介绍互联网黑帽seo技术
  15. mybatis 连表查询,子查询 collection,返回 vo
  16. 弘辽科技:拼多多再出“新招”
  17. PCB封装欣赏了解之旅(下篇)—— 常用集成电路
  18. 怎样恢复win10分区误删的数据
  19. 新冠疫情下的化工企业数字化转型
  20. 大数据-玩转数据-MaxCompute 字符串函数

热门文章

  1. jquery中如何实现一个li里面一排6张图片进行切换
  2. vue安装less并全局引入less/sass文件
  3. Java错别字检查_java中关于异常的处理
  4. python保存运行结果下次使用_将python运行结果保存至本地文件中的示例讲解
  5. matlab深度学习_matlab使用贝叶斯优化的深度学习
  6. Android开发之Java的IO流读写的十种方法
  7. jcenter和maven下载失败Can't connect to SOCKS proxy:Connection refused: connect
  8. linux nodejs环境部署,Linux 部署Nodejs 环境 (自学记录篇)
  9. IOS开发UIScrollView控件详解
  10. 小猿圈Java学习之通过命令行设置属性值