Gradle是一个非常好用的编译工具,特别是继承了maven的依赖项管理功能,需要的Library不需要像传统IDE一样手动下载复制到项目中,只需要简单的写一行gradle脚本,就能自动下载下来并编译。
但是有时候会出现各种不明情况的报错,最常见的一种原因就是依赖项版本冲突。
Gradle是一个非常好用的编译工具,特别是继承了maven的依赖项管理功能,需要的Library不需要像传统IDE一样手动下载复制到项目中,只需要简单的写一行gradle脚本,就能自动下载下来并编译。
但是有时候会出现各种不明情况的报错,最常见的一种原因就是依赖项版本冲突。
在较早版本的Android系统中,Instrumentation必须在系统权限下,才能操作整个手机;否则只能操作自身或与其签名一致的APP。而由于Instrumentation通常不能获取系统权限(需要系统签名,而系统签名文件在编译系统时已经被编译进去,不能获取到),于是基于Instrumentation的很多框架只能进行单个APP的测试,不能跨应用测试。
Robotium是一个很常用的自动化测试框架,既可以进行白盒测试,也可以进行黑盒测试。Robotium实质上是建立在Instrumentation上的一系列工具方法。
前面介绍的JUnit3测试和Android基本测试,都基于Instrumentation Test Runner,之后谷歌又推出了Android JUnit Test Runner。根据官方的资料,前者只支持JUnit3,而后者还可以支持JUnit4。
http://developer.android.com/intl/zh-cn/tools/testing-support-library/index.html
前面介绍了JUnit测试,JUnit测试只能测试纯Java代码,更多时候我们要测试和Android相关的代码,这时就要用到Android Instrumentation Test。
这里我们设置Test Artifact为Android Instrumentation Test,进行JUnit Test,测试代码会通过Android Test Runner在Android设备上运行。
最近在入门学习Android测试,感觉对于入门来说,最艰难的大概就是配置环境了,出现问题了完全没有思路,网上找了很多资料,说法各不相同,也经常不能解决问题。
对于新创建的工程,如果默认使用的gradle插件版本就在1.1.0以上,默认就可以支持单元测试,最顺利的情况下,几乎什么都不需要配置就能直接运行测试。但是不顺利的时候,各种奇怪的报错都会发生。
因项目需要,在Android中实现了一个动画,当在Activity中点击特定按钮时,会在屏幕上添加一个ImageView,并按照指定的起点、终点,沿着特定的轨迹运动(例如直线)。