Android测试:从零开始1——简介

摘要:
以上两种分类根据测试是在本地JVM上运行还是在Android平台上运行来区分。一组完整的测试分类如下:类型子类型描述单元测试本地单元测试单元测试在本地JVM上运行。当被测试的代码不依赖于Android框架API或模拟Android API时,可以使用此测试来减少测试执行时间。设备单元测试是在Android设备或模拟器上运行的单元测试。跨应用组件测试这种类型的测试用于验证用户应用程序和系统应用程序之间交互的正确行为。

参考文档:https://developer.android.com/training/testing/start/index.html

测试分类

使用android studio进行测试,首先需要先了解android测试的分类,新建工程后,项目会默认包含两个测试目录:

1、本地单元测试(Local unit tests

测试代码位于module-name/src/test/java/,这些测试直接运行在本地JVM上,不需要使用Android框架的API。

2、设备测试(Instrumented tests

测试代码位于Located at module-name/src/androidTest/java/,这些测试代码必须运行在Android设备或者Android虚拟机上。

Instrumented测试代码被打包进一个APK,然后在手机上运行。因为运行在设备上,你可以使用app里面的一些方法,修改一些属性,自动化模拟用户交互。

以上两种分类,是根据测试运行在本地JVM上,还是运行在android平台上区分的。一套完整的测试分类如下:

类型子类型描述
单元测试本地单元测试(Local Unit Tests)运行在本地JVM上的单元测试。当被测试代码不依赖于android框架API,或者模拟androidAPI时,可以使用这种测试减少测试执行时间。
 设备单元测试(Instrumented unit tests)运行在android设备或者模拟器上的单元测试。这些测试运行的时候需要获取设备信息,比如app的上下文(context)。
集成测试app组件测试这类测试为了验证,当用户在activity上进行某些操作或者输入某些值时,app是否按照预期去响应。
 跨app组件测试这类测试为了验证,用户app和系统app之间交互时的正确行为。

测试API

下面是介绍一些在android上的通用测试API

1、JUnit

2、Android Testing Support Library(AndroidJUnitRunner,Espresso,UI Automator)

3、Assertion classes(Hamcrest 库)

4、Monkey and mokeyrunner

之后会分别介绍使用如何。

 

免责声明:文章转载自《Android测试:从零开始1——简介》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Tomcat下post请求大小设置深入分析三层网络交换机的原理和设计下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Android APP性能测试笔记(一)

Android APP性能测试笔记(一) (1)工具使用       Android Studio  GT, root的真机 (2)记录apk大小(对比竞品)       使用Android Studio导入需要测试的apk 导入后,页面显示apk的大小   如果希望可以优化前后apk进行对比   (3)启动时间   冷启动:无数据的首次启动;...

一文详解云上自动化部署集群管理工具 Nebula Operator

本文首发于 Nebula Graph 公众号:Nebula Operator 开源啦!一文详解这个云上自动化部署集群管理工具 在介绍 Nebula Operator 之前,让我们先来了解下什么是 Operator。 Operator 是一种封装、部署和管理 Kubernetes 应用的方法,通过扩展 Kubernetes API 的功能,来管理用户创建、...

树莓派系统烧录和备份,访问与摄像头接入

每个人各自写出 对树莓派的认识 树莓派其实之前只是听过 但确实不没有见过甚至操作过,只是觉得很高大尚 树莓派的用途 树莓派又称卡片式电脑,外形只有信用卡大小,却具有电脑的所有基本功能,这就是Raspberry Pi电脑板。以SD/MicroSD卡为内存硬盘,卡片主板周围有1/2/4个USB接口和一个10/100 以太网接口(A型没有网口),可连接键盘、鼠标...

怎样为virtualbox添加新的分辨率

virtualbox是个相当NB的开源跨平台虚拟机软件,只是新创建的虚拟机仅仅支持几种分辨率。比如。安装win8.1,仅仅有例如以下图的几种分辨率。 只是我的显示器是5K哦,这么点分辨率,简直是搞笑。可惜,virtualbox的GUI并没有提供加入分辨率的功能,只是却提供了命令行工具来加入不论什么大小的分辨率。比如,要加入一个2560*1440的分辨率...

WINRAR广告和注册弹窗的解决办法

我的软件是直接在软件管理里面下载的,没有去官网下(因为官网我打不开),之后我发现每次解压缩的时候,都会跳出来一个广告,和一个注册界面(我是分两次解决他们的),我上百度找解决的办法,写过文本,删过编译代码,发现没用,还是有广告跳出来(可能是版本的不一样),之后我试着找不一样的方法,真给我找着了(这边再次感谢百度的强大)。 我解决注册弹窗的方法只通过这个网址(...

如何设计一个优秀的移动支付流程?

越来越多的用户通过智能手机来发现和浏览商品,与此同时,一个更大的问题产生了——这些用户是否愿意在他们的移动设备上完成支付呢?——答案马上揭晓。拿美国为例,2012年在移动电商(m-commerce)上的消费同比增长了81%, 达到了惊人的250亿美元。 而这当中,移动网页端对应用占据了压倒性优势。用户更愿意通过移动端网站来搜索比价,浏览产品,参与促销活动及...