Android测试系列之一 - 测试分类(节选)

Android测试系列之二 - 构建本地单元测试

Android测试系列之三 - 构建仪器单元测试


Android 测试是在 JUnit的基础上进行,你可以选择在JVM虚拟机上进行一个本地单元测试,也可以选择在Android设备上进行一个

仪器测试。本章节将讲述Android 测试相关的一些概念和工具。


测试类型

当使用Android Studio去编写测试的时候,你测试的代码必须放在两个目录的其中一个。对于你工程的每个模块,Android Studio

都包含了以下测试类型的目录:


本地单元测试:(Local unit tests)

本地单元测试位于module-name/src/test/java/目录下

这些测试是运行在本地的JVM虚拟机上,它是没有访问Android framework层的API的。

想要进行本地单元测试,可以参考 Building Local Unit Tests.


仪器测试:(Instrumented tests)

仪器测试位于module-name/src/androidTest/java/目录下

这些测试必须运行在真机或者模拟器上

当处于测试状态下时,仪器测试会被编译进一个APK文件中。这个APK文件和你的app是运行在系统的同一个进程中的,

所以在测试文件中,你可以去调用app中的方法或者去修改它的属性,也允许用户与你的app进行一个交互


想要了解更多关于如何创建仪器测试的问题,可以参考以下这些:

  • Building Instrumented Unit Tests:
    Build complex unit tests with Android dependencies that cannot be satisfied with mock objects.
  • Automating User Interface Tests:
    Create tests to verify that the user interface behaves correctly for user interactions within
    a single app or for interactions across multiple apps.
  • Testing App Component Integrations:
    Verify the behavior of components that users do not directly interact with, such as aService 
    or a Content Provider.





然而,以上所述,只是本地单元测试和仪器测试的一个概述,主要是为了帮助大家弄清本地单元测试和仪器测试的一个区别。

当构建一个完整的测试套件时,你必须理解真正的测试分类如下所述:




构建Anddroid 测试指南

以下这些文档更详细地说明了如何去构建和运行各种测试类型:

Building Local Unit Tests

这种方式是运行在JVM虚拟机上的,主要是用在没有依赖项的时候,或者一些简单的依赖项可以去模拟的时候

Building Instrumented Unit Tests

这种方式是运行在真机或者模拟器上的,主要是用在需要Android依赖项,而这些Android依赖项没办法去模拟的时候

Automating User Interface Tests

主要是用于去检验用户界面是否正确

Testing App Compontent Integrations

主要是用于校验那些不与用户直接去进行交互的组件,比如服务或者内容提供者

Testing Display Performance

主要是用来测试用户界面是否运行流畅



参考:

Getting Started with Testing


更多相关文章

  1. 基于Eclipse的Android开发(一)——创建第一个Android项目
  2. android 渗透测试必备工具
  3. 在Ubuntu上下载、编译、运行Android系统
  4. Android(安卓)Studio初学习体会
  5. 如何使用命令行编译运行cocos2d-x的android工程
  6. Android(安卓)= Java
  7. 初识Android
  8. Robotium自动化测试框架使用教程
  9. 编译可在Android上运行的依赖库:glib库

随机推荐

  1. Android DisplayMetrics类简介
  2. Android SDK Platforms 提取下载
  3. 如何去写 Android(安卓)init.rc
  4. android 条码识别软件开发全解析(续1详解
  5. Android 学习笔记【基础扫盲篇】
  6. Android(安卓)UI布局优化的要点
  7. android 联系人详解
  8. Android中10个成功的开源项目
  9. Android推送通知的实现--Android推送通知
  10. android模拟器无法启动问题之中文路径