1、下载Android SDK

2、打开SDK Manager.exe自动下载

3、配置环境变量

将platform-tools的路径(如: C:\001myWorkspace\eclipse(MAVEN and SVN)\android-sdk-windows\platform-tools )添加到path中

4、下载配置java JDK

5、测试

cmd进入控制台,输入adb,查看adb命令是否可用

6、连接手机

1.在手机上设置【设置】--【系统设置】--【开发者选项】--开启【USB调试】模式

2.将手机通过数据线和电脑相连接,使用adb devices 来查看设备

7、查看monkey的帮助,使用adb shell monkey -help

我们知道monkey的基本 语法是:adb shell monkey 【option】COUNT

8、查找android软件的包名:

方法1 将软件包名查出存在指定的文件中(适合知道包名是什么):

adb shell pm list package -f > C:\001myWorkspace\list.txt

文件内容:

方法2:

1.手机上启动要测试的apk,或者对它操作(确保它是最后一个被启动、操作的应用)

2. cmd中命令:adb shell dumpsys activity > C:\001myWorkspace\list2.txt

3.在文档中查找“Main stack”下的第一个“TaskRecord”,查找“A xxxxxx U”,其中xxxxxx即为软件包名称

9、monkey使用实战

1.让monkey启动iflytek.testTech.propertytool软件包,模拟20次随机事件

  • 在cmd中:adb shell monkey -p iflytek.testTech.propertytool 20

注意:

  • 如果不指定软件包名,那么默认 随机启动手机所有的aapp包
  • 如果要启动多个软件包,如启动A和B包:adb shell monkey -p A -p B 20

2.当程序崩溃或者发生任何失控异常,monkey将停止运行,如果设置--ignore-crashes,则将继续发送事件,直到计数完成

  • cmd中:adb shell monkey -p iflytek.testTech.propertytool --ignore-crashes 100

3.类似的还有:--ignore-timeout     --ignore-security-exceptions

4.设置touch(触摸)事件40%,motion(动作)事件60%

  • cmd中:adb shell monkey -p iflytek.testTech.propertytool --pct-touch 40 --pct-motion 60  100

注意:各事件的百分比之和不能超过100%

5.设置monkey执行速度 --throttle MILLISEC
  • adb shell monkey -p iflytek.testTech.propertytool --throttle 3000 100
说明:这是在事件之间插入固定的延迟,如果不设置,则monkey会尽可能的产生并执行事件(--randomize-throttle 表示随机延时
 
6.设置1s延迟结果分析
  • adb shell monkey -p iflytek.testTech.propertytool -v -v -v --throttle 1000 100 > C:\001myWorkspace\log.txt 

好了,本次到此,如果觉得有帮助,需要更多测试相关技术,欢迎来交流,联系方式如下:

Monkey测试练习的更多相关文章

  1. 【初学python】使用python调用monkey测试

    目前公司主要开发安卓平台的APP,平时测试经常需要使用monkey测试,所以尝试了下用python调用monkey,代码如下: import os apk = {'j': 'com.***.test1 ...

  2. monkey之三:monkey测试测略(摘抄)

    一.分类 Monkey测试针对不同的对象,不同的目的,采用不同的测略方案. 测试类型分为: 应用程序的稳定性测试和压力测试 测试对象分为: 单个APK和多个APK集合 测试目的分为: 解决问题的测试( ...

  3. Android Monkey测试(转载)

    Monkey是一款通过命令行来对我们APP进行测试的工具,可以运行在模拟器里或真机上.它向系统发送伪随机的用户事件流,实现对正应用程序进行压力测试. 官方介绍 :https://developer.a ...

  4. 安卓手机APP压力monkey测试

    一.Monkey概述 Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行 ...

  5. Android应用程序Monkey测试

    Monkey是Android SDK中附带的一个测试工具:Monkey用于进行压力测试,软件开发人员结合monkey打印日志和系统日志,解决测试中出现的问题. Monkey测试的特点:所有事件都是随机 ...

  6. Monkey测试4——Monkey命令行可用的全部选项

    Monkey命令行可用的全部选项 常规 --help 列出简单的用法. -v 命令行的每一个-v将增加反馈信息的级别. Level 0(缺省值)除启动提示.测试完成和最终结果之外,提供较少信息. Le ...

  7. Monkey测试3——Monkey测试结果分析

    Monkey测试结果分析 一. 初步分析方法: Monkey测试出现错误后,一般的差错步骤为以下几步: 1. 找到是monkey里面的哪个地方出错 2. 查看Monkey里面出错前的一些事件动作,并手 ...

  8. Monkey测试2——Monkey测试策略

    Monkey的测试策略 一. 分类 Monkey测试针对不同的对象和不同的目的采用不同的测试方案,首先测试的对象.目的及类型如下: 测试的类型分为:应用程序的稳定性测试和压力测试 测试对象分为:单一a ...

  9. Monkey测试1——Monkey的使用

    Monkey工具使用 一. 什么是Monkey Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实 ...

  10. monkey测试

    一.理解monkey测试 1.Monkey测试是Android自动化测试的一种手段.Monkey测试本身非常简单,就是模拟用户的按键输入,触摸屏输入,手势输入等,看设备多长时间会出异常. 2.当Mon ...

随机推荐

  1. HTML5游戏开发系列教程10(译)

    原文地址:http://www.script-tutorials.com/html5-game-development-lesson-10/ 最后我们将继续使用canvas来进行HTML5游戏开发系列 ...

  2. (10)场景转换(Transitions)

    Cocos2d-x最爽的一个特性之一就是提供了在两个不同场景之间直接转换的能力.例如:淡入淡出,放大缩小,旋转,跳动等.从技术上来说,一个场景转换就是在展示并控制一个新场景之前执行一个转换效果. 场景 ...

  3. Linux 中的 Service

    参考: cnblogs.com/xiaofan21 - linux service和daemon cnblogs.com/xuange306 - linux service命令常见使用方法 cnblo ...

  4. G.Finding the Radius for an Inserted Circle 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛

    地址:https://nanti.jisuanke.com/t/17314 题目: Three circles C_{a}C​a​​, C_{b}C​b​​, and C_{c}C​c​​, all ...

  5. Flask 使用富文本输入框

    模板 <script src="{{ url_for('static', filename='ckeditor/ckeditor.js') }}"></scrip ...

  6. sqlserver create table

    ①sql 语句创建(项目使用) use sps_db go if exists(select name from sys.tables where name='event_profile_level2 ...

  7. bzoj1009 / P3193 [HNOI2008]GT考试

    P3193 [HNOI2008]GT考试 设$f[i][j]$表示主串匹配到第$i$个位置,不吉利数字匹配到第$j$个位置 $g[i][j]$表示加上某数字使子串原来最多能匹配到第$i$个数字,现在只 ...

  8. linux history记录格式修改

    #保存一万条命令记录 sed -i 's/^HISTSIZE=1000/HISTSIZE=10000/g' /etc/profile #在/etc/profile的文件尾部添加如下行数配置信息 ### ...

  9. HTTP-java模拟Get请求小栗子

    import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import ...

  10. exception disappear when forgot to await an async method

    https://github.com/aspnet/AspNetWebStack/issues/235 https://stackoverflow.com/questions/5383310/catc ...