首先需要安装一个模拟器:

前置条件:

1.jdk环境配置

2.eclipse下载安装(直接解压即可)

3.网站上下载ADT:

由于国内禁止google的浏览,所以需要自己上网找资源,下面这个网站有比较全版本的ADT资源:

csdn博客链接:http://blog.csdn.net/cayre/article/details/29624477

提供了三种方式下载ADT,百度云,360网盘,官网下载(网盘的,都是原博主FQ在官网下载直接放上去的,可以放心使用)

4.SDK下载地址:https://dl.google.com/android/android-sdk_r24.0.2-windows.zip

(PS:Android SDK开发包国内下载地址

http://www.cnblogs.com/bjzhanghao/archive/2012/11/14/android-platform-sdk-download-mirror.html

操作步骤:

1.启动eclipse.exe

2.打开【help】->【install new software】

3.点击ADD

Name为ADT

Archive选择ADT的zip格式压缩包

4.ok后,一路next(需要耐心等待一段时间)

5.重启eclipse

6.设置SDK路径:选择【windows】->【perferences】->【android】,在SDK location中选择下载的sdk的地址

7.打开【windows】->【android SDK Manger】

PS:如过在【windows】中找不到,点击【Windows】—>【Customize Perspective】,将选项卡切换至【Command Groups Availability】—>【选中Android SDK and AVD Manager】—>点击OK

8.打开android SDK manger之后,如果packages选项非常少,参考下面步骤:

1.打开【tools】 -> 【options】

2.将Proxy Settings 里的HTTP Proxy Server和HTTP Proxy Port分别设置成mirrors.neusoft.edu.cn和80

将Others中的Force https://...sources to be fetched using http://...复选框勾上

3.重启eclipse

4.选择要下载的包进行安装,安装后再重启一次eclipse

9.打开【windows】->【Android Virtual Device Manager】,create一个新的模拟器,在弹出窗口中配置模拟器,ok后,start

(创建AVD 时如果出现了no system images installed for this target,打开SDK manager,安装上ARM EABI v7a System Image,重启AVD,就可以解决问题)

10.模拟器的打开非常慢,一开始界面是闪动的android字样,过好长一段时间后,模拟器就打开了,但是整个运行的过程也是非常慢!

在模拟器上安装需要测试的apk包:

1.将apk包放在platform-tools的文件夹下

2.启动模拟器之后,打开电脑的cmd命令。

3.将路径导向platform-tools文件夹后,输入命令adb install test.apk(不要同时连接两台设备,包括模拟器)

4.看到success,并且在模拟器的界面上可以看到安装的软件就是成功了。(这个过程也是比较慢的)

模拟器上也可以看到

PS:如果测试过程中发现模拟器无法上网,可以在eclipse下设置:

8.8.8.8为可上网的本机的DNS地址,可在cmd中通过语句ipconfig /all来查看。

有的时候没有上网也是因为一些说不清楚的原因,比方说开一下飞行模式再关掉就好了……

5.如果要卸载应用,直接在模拟器上操作会比较慢,用cmd命令中:adb uninstall com.hengtiansoft.test,success后就可以将应用删除了。

真机测试:

前置条件:

1.jdk环境配置

2.SDK下载地址:https://dl.google.com/android/android-sdk_r24.0.2-windows.zip

(PS:Android SDK开发包国内下载地址

http://www.cnblogs.com/bjzhanghao/archive/2012/11/14/android-platform-sdk-download-mirror.html

3.根据上文中SDK manager 设置,更新SDK 配置(主要更新platform-tools中的adb)

以下内容非常重要且经常导致人绕无谓的弯路!

连接真机时一定要把360手机助手关掉,以及手机上不要设置为仅充电,打开USB调试!!

4.设置好以上内容之后,真机和模拟器的操作就类似了

以上,模拟器或者真机都已经准备完成,然后学习使用monkey工具:

使用monkey工具

1.在cmd中进入platform-tools的文件夹,输入命令 adb shell monkey 查看一下monkey的一些固定命令

2.adb devices查看设备连接情况,如果只有一个模拟器,会显示下图

adb shell ls data/data //可以查看全部可用的安装包名称(真机需要root)

adb shell pm list packages -3  //获取我们自己安装应用的包名

3.以com.hengtiansoft.test作为对象进行MonkeyTest

adb shell monkey -p com.hengtiansoft.test -v 500

其中-p表示对象包 –v 表示事件数量

4.在语句后增加 adb shell monkey -p com.hengtiansoft.zhaike -v 500>testlog.txt,就可以将测试的log文件导出到platform-tools中的一个logtest.txt的文件中。

monkey基本命令

1:常用选项

-help:打印帮助信息 -v:指定打印信息的详细级别,一个 -v增加一个级别 , 默认级别为 0 。

日志级别 Level0

示例 adb shellmonkey -p com.hengtiansoft.zhaike –v 100

说明 缺省值,仅提供启动提示、测试完成和最终结果等少量信息

日志级别 Level 1

示例 adb shellmonkey -p com.hengtiansoft.zhaike –v -v 100

说明  提供较为详细的日志,包括每个发送到Activity的事件信息

日志级别 Level 2

示例 adb shellmonkey -p com.hengtiansoft.zhaike –v -v –v 100

说明  最详细的日志,包括了测试中选中/未选中的Activity信息

2:事件选项

-s:指定产生随机事件种子值,相同的种子值产生相同的事件序列。-s 200
--throttle:每个事件结束后的间隔时间(单位:毫秒)  ——降低系统的压力(如不指定,系统会尽快的发送事件序列)。--throttle 100
--pct-touch <指定触摸事件的百分比>,如:--pct-touch 5% 。
--pct-motion <percent> (滑动事件)、 --pct-trackball <percent> (轨迹球事件) 、 --pct-nav <percent> (导航事件 up/down/left/right)、 --pct-majornav <percent> (主要导航事件 back key 、 menu key)、 --pct-syskeys <percent> (系统按键事件 Home 、Back 、startCall 、 endCall 、 volumeControl)、 --pct-appswitch <percent> (activity之间的切换)、 --pct-anyevent <percent>(任意事件)
 

3:约束选项

-p:指定有效的package(如不指定,则对系统中所有package有效),一个-p 对应一个有效package, 如:-p com.ckt -p com.ckt.asura; -c:activity必须至少包含一个指定的category,才能被启动,否则启动不了;
 

4:调试选项

--dbg-no-events:初始化启动的activity,但是不产生任何事件。 --hprof:指定该项后在事件序列发送前后会立即生成分析报告( 一般建议指定该项)。 --ignore-crashes:忽略崩溃 --ignore-timeouts:忽略超时 --ignore-security-exceptions:忽略安全异常 --kill-process-after-error:发生错误后直接杀掉进程 --monitor-native-crashes:跟踪本地方法的崩溃问题 --wait-dbg:直到连接了调试器才执行monkey测试。

eg:  adb shell monkey -p com.xy.android.junit -s 500 --throttle 100 --pct-touch 5 --ignore-crashes --ignore-timeouts --monitor-native-crashes -v -v 10000 > E:\monkey_log\java_monkey_log.txt

参考文章:

http://blog.csdn.net/exlsunshine/article/details/22208857  (安装SDK 的镜像文件)

http://jingyan.baidu.com/article/7e440953d3446d2fc0e2efd5.html (ADT的下载和配置)

http://blog.csdn.net/xifeijian/article/details/8580309 (有关monkey测试工具的介绍)

http://www.cnblogs.com/lynn-li/p/5989034.html(monkey常用命令)

http://www.360doc.com/content/14/0814/19/1438920_401863695.shtml(monkey测试结果分析)

android应用程序monkey压力测试(模拟器或真机)的更多相关文章

  1. Android 如何添加一个apk使模拟器和真机都编译进去 m

    添加一个apk都需要将LOCAL_PACKAGE_NAME的值添加到PRODUCT_PACKAGES才行.而PRODUCT_PACKAGES一般在build/target/product/目录下的文件 ...

  2. Android Monkey压力测试

    Monkey 是Android SDK提供的一个命令行工具, 可以简单,方便地运行在任何版本的Android模拟器和实体设备上. Monkey会发送伪随机的用户事件流,适合对app做压力测试. 1为什 ...

  3. Android Monkey 压力测试 介绍

    Monkey 是Android SDK提供的一个命令行工具, 可以简单,方便地运行在任何版本的Android模拟器和实体设备上. Monkey会发送伪随机的用户事件流,适合对app做压力测试 阅读目录 ...

  4. Android Monkey压力测试使用

    一.Monkey简介: Monkey是Android中的一个命令行工具,可以运行在模拟器里或者现实设备中,向系统发送伪随机的用户事件流(点击.滑动.Application切换.横竖屏.应用关闭)实现对 ...

  5. Android Monkey压力测试(转)

    参考链接:https://www.cnblogs.com/yyh8/p/6707745.html Monkey 是Android SDK提供的一个命令行工具, 可以简单,方便地运行在任何版本的Andr ...

  6. 转 Android Monkey压力测试使用

    转自:https://www.jianshu.com/p/c8844327f5e9 一.Monkey简介: Monkey是Android中的一个命令行工具,可以运行在模拟器里或者现实设备中,向系统发送 ...

  7. Android Monkey压力测试环境搭建及使用

    Android Monkey压力测试学习笔记 步骤:下载SDK -> 解压进入SDK Manager下载系统 -> 配置环境变量 -> 创建虚拟设备或连接真机 -> 进入命令模 ...

  8. Android Monkey压力测试介绍

    monkey:通过Monkey程序模拟用户触摸屏幕.滑动Trackball. 按键等操作来对设备上的程序进行压力测试,检测程序多久的时间会发生异常. Monkey的构架 Monkey的参数 Monke ...

  9. Monkey (压力测试)-移动端手机压力测试工具 monkey以及monkeyrunner

    4. Monkey (压力测试) 这个是Android提供的系统工具.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行压力测试.Monkey测试是一种 ...

随机推荐

  1. 2018.11.23 Cypress BLE module test

    CYx63BPA BLE module IQC test guide Test Jig setting:1.  Connect  USB1 and USB2 with computer serial ...

  2. 5.4完成其他模块的xadmin后台注册

    courses  adminx.py from .models import Course, Lesson, Video, CourseResource import xadmin class Cou ...

  3. secureCRT连不上虚拟机上的ubuntu

    前些日子我的secureCRT一直连不上虚拟机上的ubuntu,虽然两边的IP都能ping通! 都怪我当初连ssh都没装就在那瞎弄,执行以下第二步即可连接上了. 如何使用SecureCRT连接ubun ...

  4. Jenkins部署war包到tomcat7,报错

    1.部署tomcat7,报错,信息如下: [JENKINS] Archiving /opt/.jenkins/jobs/qxpt_jx-deploy/workspace/pom.xml to com. ...

  5. PyalgoTrade 计算权重平滑平均价(三)

    本节介绍如何使用收盘价的SMA价格的策略 from pyalgotrade import strategy from pyalgotrade.barfeed import yahoofeed from ...

  6. BI系统之统计图表的绘制[后端实现]

    因为在开发内部BI系统中需要画出统计图表,我选了Jpgraph 开源绘图工具实现需求. 之前实现过需求,没想到这次又花了很多时间回忆,各种搜索,真的是好记性不如烂笔头, 不会总结的人没有未来啊. 常用 ...

  7. springboot整合mybatis增删改查(二):springboot热部署

    SpringBoot整合热部署 传统情况下, 我们用idea运行springboot程序时, 如果我们需要修改类里的方法,或者其他信息 我们需要修改完保存,并且重启springboot,有时候会很浪费 ...

  8. iframe相关知识

    iframe 不带边框的iframe因为能和网页无缝的结合从而不刷新页面的情况下更新页面的部分数据成为可能,可是 iframe的大小却不像层那样可以“伸缩自如”,所以带来了使用上的麻烦.一般通过百分比 ...

  9. test20181019 B君的第三题

    题意 B 君的第三题(urumqi) 题目描述 风雨如晦,鸡鸣不已. B 君最近在研究自己的学长都在做什么工作,每个学长属于一个公司. B 君会获得一些信息,比如x 和y 在相同公司,x 和y 在不同 ...

  10. python urllib2 error handling

    python 2 里面的下载实现. https://stackoverflow.com/questions/666022/what-errors-exceptions-do-i-need-to-han ...