Android测试教程(8):测试Service

Android 测试框架也提供对Service测试的支持,基本类为ServiceTestCase,因为Service类通常假定和它是和Client是分开 使用的,因此你可以无需使用Instrumentation 来测试Service。

当你设计一个Service时,你应该考虑测试用例中如何检查 Service的当前状态,比如你在onCreate ,onStartCommand 中启动一个Service,一般没有一个全局变量来表示Service是否成功 ,你可能需要自己定义一个全局变量用于测试用例中。

ServiceTestCase 中提供getService() 可以取得当前被测试的 Service对象。

ServiceTestCase 为AndroidTestCase的子类,因此可以测试和Permission 相关的功能,并提供Mock的 Application 和Context 对象为测试Service提供了一个隔离的测试环境。

后面提供具体例子。

查看全套教程:http://www.bianceng.cn/OS/extra/201301/35252.htm

时间: 2024-10-31 21:10:27

Android测试教程(8):测试Service的相关文章

Android测试教程

一.  测试项目    Android的编译和测试工具需要测试项目组织符合预订的结构:分别为Test case 类,Test case 包以及测试项目. JUnit 为Android的测试的基础,一般来说,一个JUint测试为一个用来测试一个应用某一部分的语句. 你可以将多个测试Test方法组织起来构成一个测试用例(Test case),多个测试用例可以构成Test Suites . 每个Test方法相对独立,一个测试类Test class包含一组相关的Test 或其它辅助方法. 在Androi

Android测试教程(9):ApplicationTestCase示例

前面介绍了Android测试的一些理论知识,从本篇开始的几篇将结合ApiDemoTest示例来介绍Android测试的实例.在此之前可 以参照Android测试教程(3):测试项目 创建ApiDemos->tests 测试项目,本项目测试用来测试ApiDemos,主要目的是介绍 Android测试框架的使用方法. 当然要测试ApiDemos,事先要创建好项目ApiDemos.下图显示了创建好ApiDemos- >Tests后,ApiDemos->Tests中所含的Java类: Andro

Android测试教程(5):第一个测试项目HelloWorldTest

本例介绍创建一个测试项目的一般步骤和编写测试用例的基本方法. 为简单起见,创建一个HelloWorld应用,带有一 个Greeting类,其定义如下: public class Greeting { private String name; public Greeting(String name){ this.name=name; } public String getGreetings(){ return "Hello," +name; } } 测试项目打算来测试这个Greeting

Android开发与测试教程

Android简明开发教程一:概述 Android简明开发教程二:安装开发环境 Android简明开发教程三:第一个应用Hello World Android简明开发教程四:Android应用基本概念 Android简明开发教程五:Activities Android简明开发教程六:用户界面设计 Android简明开发教程七:Intents和Intent Filters Android简明开发教程八:引路蜂二维图形绘制实例功能定义 Android简明开发教程九:创建应用程序框架 Android简

Android测试教程(4):测试相关API

Android的测试框架相关的API主要定义在三个包中: android.test 用于编写Android测试用例 android.test.mock 定义了方便测试用的测试"桩"类 android.test.suitebuilder 运行测试用例的Test Runner类 Android 测试API 是基于JUnit 扩展而来,并添加了与Android平台相关的测试API. JUnit 你可以直接使用 JUnit中相关API编写一些和平台无关的测试用例(基于TestCase), An

Android测试教程(2):测试基础

Android测试框架(Android Testing Framework)为Android开发环境的一个组成部分,可以用来测试Android的各个方面,从 单元测试到框架测试到UI测试等. 其主要功能有: Android测试框架基于JUnit,因此可以直接使用JUnit 来测试一些与Android平台不是很相关的类,或者使用Android的JUint 扩展来测试Android组件,如果你刚开始接触Android 测试,可以先从AndroidTestCase写一些通用的测试用例,然后再写较复杂

Android测试教程(1):概述

测试也是开发过程中一个重要组成部分,Android开发环境集成一个测试框架可以用来测试Android应用的各个方面,单元测试,UI测试等. 本教程基于Android 开发教程英文版. 基本概念包括 Android测试的基础知识 Activity Testing 侧重于Activity的测试,介绍了如果使用Instrumentation 在正常Activity生命周期之外来控制Activity,然后测试Activity的特定的功能和测试UI的一些技巧. Content Provider Testi

Android测试教程(16):monkeyrunner简介

如果你需要实现自动测试,Android的monkeyrunner 工具可以帮助你实现自动测试,它提供了一组API可以用来控制Android设备或模拟器,使用monkeyrunner,你可以编写Python 程序来安装Android应用或是测试包,运行应用或测试,发送按键消息,并可以截屏,然后保存在计算机中.monkeyrunner 主要目的是用来在应用程序或框架层次来测试应用程序或运行单元测试包,但你也可以用作其它目的. monkeyrunner 工具包不同于UI/Application Exe

Android测试教程(12):ServiceTestCase示例

ServiceTestCase 为测试Service提供了一个可控的测试环境,它提供对Service 生命周期的基本支持,并可以通过注入一些 依赖对象来控制测试环境以便测试Service. ServiceTestCase的类继承如下图所示: Service Lifecycle 支持, 每个Service运行 都遵循一定的顺序(生命周期方法),ServiceTestCase提供下面方法来支持对Service生命周期方法 的测试: 每个测试方法调用之前首先会执行setUp 方法,setUp 的基本实

Android测试教程(3):测试项目

Android的编译和测试工具需要测试项目组织符合预订的结构:分别为Test case 类,Test case 包以及测试项目. JUnit 为Android的测试的基础,一般来说,一个JUint测试为一个用来测试一个应用某一部分的语句. 你可以将多个测试Test方法组 织起来构成一个测试用例(Test case),多个测试用例可以构成Test Suites . 每个Test方法相对独立,一个测试类Test class 包含一组相关的Test 或其它辅助方法. 在Android平台上,你可以使用