Android自动化测试之路——Provider(二)

再来说说第二种测试方式:

前提:需要你的测试工程与被测工程运行在统一进程中,使用InstrumentationTestcase相关的子类。

1、获取被测应用的db列表,通过调用ApplicationContext的databaseList;

2、自定义一个SQLiteOpenHelper的之类作为操作接口,如:public class DatabaseUtil extends SQLiteOpenHelper

3、根据第一步获取的db列表数组,获取被测db,调用DatabaseUtil的构造方法,拿到db的可读可写接口;

4、拿到dbname下面需要知道具体表名,通过以下执行sql:

Cursor  c = db.rawQuery("select name from sqlite_master where type=‘table‘ order by name", null);
        while(c.moveToNext()){
            Log.w("test_DB",c.getString(0));
        }

5、现在dbname和tablename都已经知道了,想干嘛就干嘛了

比如:

db.query();db.insert();db.update();db.delete();
时间: 2024-07-31 19:03:54

Android自动化测试之路——Provider(二)的相关文章

Android自动化测试之路——Notification

在Android4.3以后较为方便,继承NotificationListenerService服务类, 该类继承至Service,是一个服务类,当通知栏有新的Notification消息送达.已有消息清除的时候,会回调通知到该类下面的方法. 所以需要重写它的两个方法,onNotificationPosted与onNotificationRemoved.使用该服务,需要在AndroidMenifest.xml中声明系统权限: 最后,因是系统服务,我们无法通过startService(Intent

Android自动化测试之路——Service

对Service进行测试,首先你得熟悉service的两种生命周期,即onCreate——onBind 和onCreate——onStartCommand. 启动服务的方式分别是startService()和bindService(). 创建测试类需要继承ServiceTestCase这个类,默认初始化会设定mock Context和mock Application,已达到与被测对象的独立,实现单元测试的目的. 需要说明下的是ServiceTestCase.bindService()和Servi

Android自动化测试之路——Broadcasting

这里我所理解广播的测试对象主要通过两个渠道获得: 1.通过manifest.xml中静态注册的广播,用于收听系统广播后运行自己业务的这块逻辑: 2.通过动态注册形式的广播,对象是如何发送广播与接收广播后执行的逻辑: 其实,第一点跟这里所谈的广播测试无关系,主要测试对象是接收后的逻辑,需要设计相应的单元测试用例来测试:第二点,测试对象分为两部分,广播是否正确发送?接收后处理逻辑是否正确? 有个细节要说明下: 本人写了个接收器去接收被测应用所发送的广播,但需要注意的是:如果接收广播的应用自从安装就没

Android自动化测试之环境搭建

Android自动化测试之环境搭建 一.Android-sdk介绍? SDK(Software development kit)软件开发工具包.被软件开发工程师用于为特定的软件包.软件框架.硬件平台.操作系统等建立应用软件的开发工具的集合.Android是google公司推出的手机开发平台.Android-sdk就是指Android专属的软件开发工具包. Android-sdk中我们最常用的就是tools和Platformtools文件夹中的工具. 二.工具安装? 1.android-sdk只需

Android自动化测试之UIAutomator(三)---比对测试截图

系列回顾:本系列主要从开发的角度介绍UiAutomator的使用,总共包括三篇: 基础入门: Android自动化测试之UiAutomator(一) 技巧篇:     Android自动化测试之UiAutomator(二)(未完成) 比较工具篇 :Android自动化测试之UiAutomator(三)---比对测试截图 本文是第三篇. 转载请注明出处:http://blog.csdn.net/xzy2046/ 以下是正文: 1.简介: 本文适合所有以图片作为输出的自动化开发工具(不仅限于Andr

[转] Android自动化测试之使用java调用monkeyrunner(五)

Android自动化测试之使用java调用monkeyrunner 众所周知,一般情况下我们使用android中的monkeyrunner进行自动化测试时,使用的是python语言来写测试脚本.不过,最近发现可以用java调用monkeyrunner Api,用java语言写测试脚本. 于是,就简单研究了一下.这里做一些总结.希望有对在研究的午饭可以有所用处. 开始时,搜素到一些零碎的教程,说使用java调用monkeyrunner时,需要导入android sdk  tools路径下的lib里

Android自动化测试之MonkeyRunner录制和回放脚本

Android自动化测试之MonkeyRunner录制和回放脚本(十一) 分类: 自动化测试 Android自动化 2013-02-22 10:57 7346人阅读 评论(2) 收藏 举报 androidAndroidANDROIDMonkeyRecordermonkeyrunnerMonkeyRunnerMonkeyrunner 对于MonkeyRunner,有些人可能会想,既然是Android自动化测试,离不开测试脚本,那么,我们可不可以录制测试脚本呢,答案是可以的. 我们先看看以下monk

Android自动化测试之Monkeyrunner学习笔记(一)【转】

因项目需要,开始研究Android自动化测试方法,对其中的一些工具.方法和框架做了一些简单的整理,其中包括Monkey.Monkeyrunner.Athrun.appium,目前仍在了解学习android测试框架.CTS等.本文主要为前段时间学习总结,由于刚接触不久,故本文难免会有些肤浅,大神请绕走~ [目录] 1.Monkeyrunner简介 2.Monkeyrunner工具特性 3.Monkeyrunner工具同Monkey工具的差别 4.运行Monkeyrunner 5.实例 6.学习笔记

[转] android自动化测试之MonkeyRunner使用实例(三)

一.使用CMD命令打开模拟器 运行monkeyrunner之前必须先运行相应的模拟器或连上设备,不然monkeyrunner无法连接设备. 1.1  用Elipse打开Android模拟器或在CMD中用Android命令打开模拟器. 1.2  这里重点讲一下在CMD中用Android命令打开模拟器 命令:emulator -avd test (注意:test为虚拟设备的名称——AVD的全称为:Android Virtual Device,就是Android运行的虚拟设备,如下图所示:) 上面命令