Android Testing学习01 介绍 测试测什么 测试的类型
Android Testing学习01 介绍 测试测什么 测试的类型
Android 测试 测什么
1.Activity的生命周期事件
应该测试Activity的生命周期事件处理。
如果你的Activity应该在onPause()和onDestroy()中保存状态,并在onCreate()中恢复;你应该写测试去证明:状态能够被正确地保存和恢复。
配置改变事件也需要被测试,因为有些事件会导致当前Activity的重建,比如屏幕旋转有时候会重建Activity。你应当去测试事件是否被正确地处理,新建的Activity是否保存了之前的状态。
2.数据库和文件系统操作
数据库和文件系统的操作应当被测试,确保它们正确地处理。
这些操作应该在三个层次被测试:1.低层次的独立测试;2.高层次的通过Content Provider的测试;3.从应用本身出发的测试。
3.设备的物理特性
在发布你的应用之前,你应该确认在所有支持的设备上,应用都能正常运行。或者至少要找出不支持的情况,并采取一些措施。、
在设备特性中,你可能发现你需要测试:
网络性能;
屏幕密度;
屏幕分辨率;
屏幕尺寸;
可用的传感器;
键盘和其他输入设备;
GPS;
外部存储;
还有很多要测试的内容,可以看看谷歌官网的:what to test: http://developer.android.com/tools/testing/what_to_test.html
测试的种类
测试分为:
单元测试 Unit tests
单元测试的粒度最细,用于测试方法、单独的事件等。
Android单元测试基于JUnit 3。
为了独立地测试组件,Android提供了这个包android.test.mock,来提供一些桩对象,即模拟对象。
集成测试 Integration tests
集成测试用于测试组件联合起来运行的情况。即经过单元测试的独立组件现在集成在一起,进行较大粒度的测试。
功能或接受性测试 Functional or acceptance tests
商务或QA人员进行的测试。
有一些工具:
性能测试 Performance tests
压力测试,通常通过重复性的操作来进行测试。用于找到性能瓶颈,之后才针对瓶颈进行优化。
系统测试 System tests
系统作为一个整体测试,测试各个组件间的交互,测试软件和硬件。
一般的,系统测试包含下列几种测试:
GUI tests
Smoke tests
Performance tests
Installation tests
Android testing framework
Android的测试框架基于JUnit,并做了一些扩展。
特点:

Instrumentation框架是测试框架的基础,它控制测试中的应用并且允许mock组件的注入。
参考资料
《Android Application Testing Guide》
Android Testing官网链接:
http://developer.android.com/tools/testing/index.html
Android Testing学习01 介绍 测试测什么 测试的类型的更多相关文章
- Android Testing学习02 HelloTesting 项目建立与执行
Android Testing学习02 HelloTesting 项目建立与执行 Android测试,分为待测试的项目和测试项目,这两个项目会生成两个独立的apk,但是内部,它们会共享同一个进程. 下 ...
- Redis学习01——介绍与搭建环境
Redis学习01介绍与搭建环境一简介二yum配置已经配置了的可以跳过三安装gcc四安装redis1 上传Redis到linux中2 解压到usrlocal下3 编译redis4 安装redis5 拷 ...
- mongodb学习01介绍
安装/运行 查看当前mongodb运行情况: pgrep mongo; 在当前路径下建立数据库: mkdir -p data/db 按照一个数据库路径运行mongod --dbpath ./data/ ...
- 【Android Api 翻译2】Android Testing(1) 浅尝Android测试的奥秘
------- 源自梦想.永远是你IT事业的好友.只是勇敢地说出我学到! ---------- 仅供学习和交流使用,翻译不好勿喷,请只摘除不合适的地方 Testing The Android fram ...
- Android Testing(1) 浅尝Android测试的奥秘
------- 源自梦想.永远是你IT事业的好友.只是勇敢地说出我学到! ---------- 仅供学习和交流使用,翻译不好勿喷,请只摘除不合适的地方 Testing The Android fram ...
- Android开发:《Gradle Recipes for Android》阅读笔记(翻译)5.2——使用Android Testing Support Library进行测试
问题: 你想要测试app的Android组件. 解决方案: 使用新的测试类实现JUnit风格的测试. 讨论: 测试像activities,services等的Android组件,需要将app部署到连接 ...
- Android自动化学习笔记之MonkeyRunner:官方介绍和简单实例
---------------------------------------------------------------------------------------------------- ...
- Android Animation学习(六) View Animation介绍
Android Animation学习(六) View Animation介绍 View Animation View animation系统可以用来执行View上的Tween animation和F ...
- Android Animation学习(一) Property Animation原理介绍和API简介
Android Animation学习(一) Property Animation介绍 Android Animation Android framework提供了两种动画系统: property a ...
随机推荐
- JS网页顶部弹出可关闭广告图层
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Database Primary key and Foreign key [From Internet]
Database Primary key and Foreign key --Create Referenced Table CREATE TABLE Department ( DeptID int ...
- 第21/24周 性能监控(PAL工具)
大家好,欢迎来到性能调优培训的最后一个月.在过去的5个月里,我们谈了SQL Server的各种性能相关的话题,包括性能调优的技术和问题. 但当在你面前,SQL Server没有按你预想的运行时,你会怎 ...
- 解决SpringMVC的@ResponseBody返回中文乱码
SpringMVC的@ResponseBody返回中文乱码的原因是SpringMVC默认处理的字符集是ISO-8859-1,在Spring的org.springframework.http.conve ...
- Asp.net 加密解密类
namespace Wedn.Net { /// <summary> /// EncryptHelper 来′自? wedn.net /// </summary> public ...
- HT for Web自定义3D模型的WebGL应用
有不少朋友询问<HTML5 Web 客户端五种离线存储方式汇总>文章例子的3D表计模型是如何生成的,这个例子是通过导入3dmax设计好的表计模型,然后通过obj格式导入到HT for We ...
- SQL Server数字辅助表的实现
数字辅助表是一个连续整数的数列,通常用来实现多种不同的查询任务.大多分两类:足够大物理数字表和表函数,前者可以称为静态的,后者可以称为动态且按需生产. 物理数字表 物理数字表通常存在一 ...
- DirectShow .Net 实现视频
DirectShow .Net 实现视频 .获取视频采集设备IBaseFilter接口对象的方法 //获取所有视频设备名称 public ArrayList GetVideoInputDevice() ...
- C#协变和逆变
我们知道在C#中,是可以将派生类的实例赋值给基类对象的.
- C# HTTP上传文件
代码: /// <summary> /// Http上传文件 /// </summary> public static string HttpUploadFile(string ...