Android开发之按键、触摸屏和手势输入专业压力測试方法
按键输入、触摸屏输入和手势笔画输入等功能是Android开发的基本功能。其稳定性和健壮性对移动应用系统开发很重要。按键、触摸屏和手势输入专业压力測试方法能够使用Monkey,相应用程序进行压力測试,检測该应用的稳定性、健壮性。
Monkey是Android平台下自己主动化測试工具,它向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等)。
一、压力測试工具Monkey基本使用方法:
adb shell monkey [options]
注:若不指定options,Monkey将以无反馈模式启动,并把事件随意发送到安装在目标环境中的所有包。
例:adb shell monkey -p com.demo -v 100
//启动指定的应用程序,并向其发送100个伪随机事件:
二、压力測试工具Monkey对測试中的系统进行监測。及其三种情况特殊处理:
(1)假设应用程序崩溃或接收到不论什么失控异常,Monkey将停止并报错。
(2)假设应用程序产生了应用程序不响应(applicationnot responding)的错误,Monkey将会停止并报错。
(3)假设限定了Monkey执行在一个或几个特定的包上。那么它会监測试图转到其他包的操作,并对其进行阻止。
依照选定的不同级别的回馈信息,在Monkey中还能够看到其运行过程报告和生成的事件。
三、压力測试工具Monkey的选项和分类:
(1)基本配置选项,如设置測试的事件数量;
(2)事件类型和频率;
(3)调试选项。
(4)执行约束选项,如设置仅仅对单独的一个包进行測试;
(5)选项具体说明:

四、压力測试工具Monkey的基本特性:
(1)測试使用的事件流数据流是随机的。不能进行自己定义;
(2)可对測试的对象、事件数量、类型、频率等进行设置。
(3)測试的对象仅为应用程序包(apk包),有一定的局限性;
Android开发之按键、触摸屏和手势输入专业压力測试方法的更多相关文章
- 蓝牙压力測试报抛android.os.TransactionTooLargeException异常分析总结
1.从main日志中找到异常点,例如以下: 08-20 11:05:19.754 5023 5023 E AndroidRuntime: FATAL EXCEPTION: main 08-20 11: ...
- Android开发笔记——图片缓存、手势及OOM分析
把图片缓存.手势及OOM三个主题放在一起,是因为在Android应用开发过程中,这三个问题经常是联系在一起的.首先,预览大图需要支持手势缩放,旋转,平移等操作:其次,图片在本地需要进行缓存,避免频繁访 ...
- HoloLens开发笔记之Gesture input手势输入
手势是HoloLens三个首要输入形式之一.一旦你使用凝视定位了一个全息图像,手势允许你与它交互.手势输入允许你使用手或者点击器原生地与全息图像交互. 手势之外,你也可以在应用中使用语音输入来交互. ...
- Android开发手记(30) 触摸及手势操作
触摸操作在现在智能手机系统中起到举足轻重的作用,本文将对安卓中的触摸以及一些简单手势的操作进行简单的介绍. 1.触摸 首先是关于触摸的判断,有两种方法可以判断的触摸操作. (1)setOnTouchL ...
- Android开发技巧:像QQ一样输入表情图像
EditText和TextView一样,也可以进行图文混排.所不同的是,TextView只用于显示图文混排效果,而EditText不仅可显示, 也可混合输入文字和图像,让我们先回顾一下图5.2所示的 ...
- Android 开发 防止按键连续点击
前言 按键防止连续点击是任何一个项目都要考虑的功能.下面我们将介绍几种防止按键连续点击的方法 用工具类实现 /** *@content:按键延时工具类,用于防止按键连点 *@time:2019-5-1 ...
- Android开发之设置应用设置全屏的两种解决方法 兼容android5.0等两种解决方法
在开发中我们经常需要把我们的应用设置为全屏,有两种方法,一中是在代码中设置,另一种方法是在配置文件里改! 一.在代码中设置: 代码如下: package com.android.tutor; imp ...
- ANDROID 开发,安装离线安装包的下载地址及安装方法。
前言: 建议采用离线安装的方法安装SDK包,在线的方式实在是.....多了不解释. 下面说一下离线安装的方法: 1.下载地址:http://pan.baidu.com/s/1sjuJwYD#path= ...
- <转>Android开发使输入框点击弹出日期选择对话框的方法
非常简单直接上代码: 转自:http://blog.sina.com.cn/s/blog_4ac1b5f60102vgnx.html final EditText et1=(EditText)find ...
随机推荐
- 在github 网页上,删除已经建好的库
在github 上面怎么删除已经建好的库 点击你要删除的库,然后找到Setting 找到如图所示的Delete 在输入框里面输入你要删除的库的名字 最后点击按钮,就可以删掉了
- Citrix 服务器虚拟化之三十二 XenConvert
Citrix 服务器虚拟化之三十二 XenConvert 简介: Citrix XenConvert 是用于实现物理到虚拟(P2V)转换的工具,可将工作负载从运行 Windows 的服务器或桌面计算 ...
- 基于visual Studio2013解决面试题之0205查找路径
题目
- Boost Thread学习笔记四
barrierbarrier类的接口定义如下: 1 class barrier : private boost::noncopyable // Exposition only 2 { 3 pub ...
- Redis核心解读:集群管理工具(Redis-sentinel)
Redis核心解读:集群管理工具(Redis-sentinel) - Redis - TechTarget数据库 Redis核心解读:集群管理工具(Redis-sentinel)
- An example usage of an encryption algorithm (AES, in this case) is:
pycrypto 2.6.1 : Python Package Index An example usage of an encryption algorithm (AES, in this case ...
- UVA 839 (13.08.20)
Not so Mobile Before being an ubiquous communications gadget, a mobile wasjust a structure made of ...
- 28.uva 10891 Game of Sum 记忆化dp
这题和上次的通化邀请赛的那题一样,而且还是简化版本... 那题的题解 请戳这里 ... #include<cstdio> #include<algorithm> #i ...
- vs2005及以上版本的程序分发问题
我们使用vs2005及以上版本编译的应用程序(C/C++),在客户机器运行时,会出现: “由于应用程序的配置不正确,应用程序未能启动,重新安装应用程序可能会纠正这个问题” 那么,我们怎么解决这个问题呢 ...
- ExtJS拖拽效果
ExtJS拖拽效果 <html> <head> <title>hello</title> <meta http-equiv="conte ...