Robolectric是一个高效但不完美的Android单元测试框架。其通过一系列对底层Android元素的替换来实现对原有元素调用的模拟,从而实现脱离模拟器的测 试。非常值得一提的是,在测试服务器请求时,Robolectric的数据模拟和延时发送模拟,给多线程状态下的测试提供了很好的解决方法
目前最新版本为3.0,可以支持API21,你可以在github上面找到他的实例和开源代码。
Roblectric的github地址
此处所实例的配置是之前2.4版本Roblectric的配置,目前使用最新的AS和3.0版的Robolectric更简单。
我的配置环境步骤
安装Android Studio Unit Test插件。
这个插件可以自动帮你关联测试所在目录以及维护插件测关系依赖,免去你很多需要配置的地方。
可以通过插件中心(settings-plubgins)在线安装(Browse repositories…),也可以先下载插件的zip包,离线安装(Install plugin from disk..)。(插件zip包下载位置:https://github.com/evant/android-studio-unit-test-plugin/blob/master/AndroidStudioUnitTestPlugin.zip?raw=true)添加测试module
下图是我的项目目录,测试类单独在一个module里面。这样我们项目里面是不需要任何改动的,配置都是在测试module里面配置。
下面是一些比较关键的文件:
../robolectric-test/build.gradle