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

  集成测试用于测试组件联合起来运行的情况。即经过单元测试的独立组件现在集成在一起,进行较大粒度的测试。

  工具:http://fit.c2.com/

功能或接受性测试 Functional or acceptance tests

  商务或QA人员进行的测试。

  有一些工具:

  http://www.fitnesse.org/

  http://jbehave.org/

性能测试 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 介绍 测试测什么 测试的类型的更多相关文章

  1. Android Testing学习02 HelloTesting 项目建立与执行

    Android Testing学习02 HelloTesting 项目建立与执行 Android测试,分为待测试的项目和测试项目,这两个项目会生成两个独立的apk,但是内部,它们会共享同一个进程. 下 ...

  2. Redis学习01——介绍与搭建环境

    Redis学习01介绍与搭建环境一简介二yum配置已经配置了的可以跳过三安装gcc四安装redis1 上传Redis到linux中2 解压到usrlocal下3 编译redis4 安装redis5 拷 ...

  3. mongodb学习01介绍

    安装/运行 查看当前mongodb运行情况: pgrep mongo; 在当前路径下建立数据库: mkdir -p data/db 按照一个数据库路径运行mongod --dbpath ./data/ ...

  4. 【Android Api 翻译2】Android Testing(1) 浅尝Android测试的奥秘

    ------- 源自梦想.永远是你IT事业的好友.只是勇敢地说出我学到! ---------- 仅供学习和交流使用,翻译不好勿喷,请只摘除不合适的地方 Testing The Android fram ...

  5. Android Testing(1) 浅尝Android测试的奥秘

    ------- 源自梦想.永远是你IT事业的好友.只是勇敢地说出我学到! ---------- 仅供学习和交流使用,翻译不好勿喷,请只摘除不合适的地方 Testing The Android fram ...

  6. Android开发:《Gradle Recipes for Android》阅读笔记(翻译)5.2——使用Android Testing Support Library进行测试

    问题: 你想要测试app的Android组件. 解决方案: 使用新的测试类实现JUnit风格的测试. 讨论: 测试像activities,services等的Android组件,需要将app部署到连接 ...

  7. Android自动化学习笔记之MonkeyRunner:官方介绍和简单实例

    ---------------------------------------------------------------------------------------------------- ...

  8. Android Animation学习(六) View Animation介绍

    Android Animation学习(六) View Animation介绍 View Animation View animation系统可以用来执行View上的Tween animation和F ...

  9. Android Animation学习(一) Property Animation原理介绍和API简介

    Android Animation学习(一) Property Animation介绍 Android Animation Android framework提供了两种动画系统: property a ...

随机推荐

  1. WIN7 共享网络方法

    WIN7 共享网络方法 第一步: 按WIN+R调出“运行”栏,在“运行”菜单栏输入“cmd”,出现命令提示符,输入命令“netsh wlan set hostednetwork mode=allow ...

  2. 7 款免费的 Metro UI 模板

    #1 – Free Metro Ui Style template by Asif Aleem 很棒的蓝色调 Metro UI 管理模板 #2: Metro-Bootstrap by TalksLab ...

  3. 让我们开启数据库无Linq、零sql时代

    让我们开启数据库无Linq.零sql时代 Moon.Orm 5.0总论 第一部分 MQL Moon.Orm 5.0 (MQL版) 版本维护及下载 (跟踪发布)  Moon.Orm 5.0系列文章 1. ...

  4. AppleScript的字典怎么看怎么用

    新迭代之前忙里偷闲摸鱼了几种脚本的写法:bash, alfred,automator,applescript 这篇就说说这个applescript 以iterm为例 初看它的字典大概长这样: 1.方法 ...

  5. winform中ComboBox利用AutoComplete属性实现模糊查询(有缺陷)

    上一篇文章是用ComboBox里面的原生事件实现模糊查询,操作比较灵活一些,但是收到评论说,利用AutoComplete属性就可以实现模糊查询,但是据本人所了解,AutoComplete虽然能够方便的 ...

  6. 我的vim配置文件

    强烈拥护开源精神,高举开源大旗,今天我就分享下我自己结合网上还有自己实际使用配的vimrc,可以给各位参考下,不要见笑,具体说明我在rc里写的也很详细,可以具体看下,也希望可以借这个机会能多认识认识几 ...

  7. java实现可有括号的android计算器

    写了一个android版的计算器,可以计算带括号的表达式,不过前提是:正确的表达式才行 小缺陷是没有做表达式括号的控制,现在还没有想到好的控制方式 package javaAdvanced; impo ...

  8. C#的变迁史 - C# 1.0篇

    C#与.NET平台诞生已有10数年了,在每次重大的版本升级中,微软都为这门年轻的语言添加了许多实用的特性,下面我们就来看看每个版本都有些什么.老实说,分清这些并没什么太大的实际意义,但是很多老资格的. ...

  9. iOS阶段学习第14天笔记(NSString与NSMutableString)

    iOS学习(OC语言)知识点整理 一.OC字符串的操作 1)OC中字符串分为两种: 1.不可变字符串NSString:不能修改对象内容,但是可以改变对象的指针. 2.可变字符串NSMutableStr ...

  10. 【算法和数据结构】_12_小算法_abs_fabsf_fabsd_大端小端判断

    最近学习要用到求绝对值函数,看了一下有很多种的abs函数,因此想自己实现这些代码. 下面是我进行测试的代码: #include <stdio.h> typedef unsigned int ...