Android设备内存,CPU和电池都有限。应用的行为也外部因素有关,如连接性、系统利用等。因此调试、测试和优化Android应用非常重要。
Android的测试不可能覆盖所有Android设备,通常只覆盖典型设备。确保应用至少覆盖尽可能低的配置设备上使用和尽可能高的配置设备,例如像素密度、屏幕分辨率等。
2015年Android应用程的工具和框架的支持有巨大的改善。Android测试系统已经更新到基于JUnit4中,你可以在Java虚拟机或在Android运行时运行单元测试。此外谷歌推出了一款名为Espresso的用户界面测试框架。
Android应用的测试内容一般来说应该专注于测试应用的业务逻辑。建议:
Android的单元测试是基于JUnit的。可分为:
Android的Gradle插件支持在JVM上执行Andr oid单元测试。它使用特殊版本的android.jar(也称为 Android mockable jar)支持单元测试,使所有字段,方法和类可用。任何调用到Android mockable JAR默认都是异常。快速但是不能测试安卓相关内容。Instrumented可测试Android API。
建议:
app/src/main/java - 源代码
app/src/test/java - 本地测试
app/src/androidTest/java - Instrumented单元测试
如果你这些约定,Android构建系统会自动在JVM上运行单元测试、在Android设备上运行安卓测试。
指定测试类型:
查看测试执行:
如果看到"error duplicate files in path. Path in archive: LICENSE.txt"错误,修改app/gradle.build
android { packagingOptions { exclude 'LICENSE.txt' } }
参考资料:http://www.sunmoonblog.com/blog/2015/06/10/android-testing/