目录
前言:
Robolectric 是一个用于 Android 应用程序自动化测试的开源框架。它可以帮助开发者快速搭建自动化测试环境,自动化测试应用程序的功能、性能和用户体验等方面的问题。但是,Robolectric 的配置和使用相对比较复杂,需要熟悉 Android 应用程序自动化测试的基本知识和技能。
Robolectric 简介
其实很早就知道这个框架,但一直忍着没去碰它,而是选择先去熟悉了下 Instrumentation,这两天才忍不住......
Instrumentation
与 Roboletric
都是针对 Android 进行单元测试的框架,前者在执行 case 时候是以 Android JUnit 的方式运行,因此必须在真实的 Android 环境中运行(模拟器或者真机),而后者则是以 Java Junit 的方式运行,这里就脱离了对 Android 环境的依赖,而可以直接将 case 在 JVM 中运行,大赞~,因此很适合将 Roboletric 用于 Android 的测试驱动开发。
网上其实还是比较多关于 Roboletric 的文章的,但是。。尼玛,里面都是贴点官网的示例代码,对于整个环境的搭建,却没多少提及的。。环境是最主要的,环境 OK 了,示例代码我到官网复制就 OK。。
新建 Android Project
新建 一个 Android 项目 ( RoboletricDemo ),一路默认,这里就不帖 MainActivity 的代码,代码很简单,该示例的主界面是一个 TextView,显示的内容为 Hello world!
,界面中还有一个 Button,点击 Button,TextView 的内容会变为Hello xuxu!
,呵呵。。
其中我对 sdk 的配置了 min sdk 为 16
配置 Gradle
-
配置 RoboletricDemo/build.gradle
ext { robolectricVersion = "3.0-SNAPSHOT" } subprojects { buildscript { repositories { jcenter() } dependencies { classpath "com.android.tools.build:gradle:1.2.2" } } repositories { maven { url "https://oss.sonatype.org/content/repositories/snapshots" } mavenLocal() mavenCentral() } }
-
配置 app/build.gradle
apply plugin: 'com.android.application' android { compileSdkVersion 22 buildToolsVersion "22