1.Monkey简介

  Monkey-猴子,通过Monkey程序模拟用户触摸屏幕、滑动Trackball、 按键等操作来对设备上的程序进行压力测试,检测程序多久的时间会发生异常,主要用于Android 的压力测试  自动的一个压力测试小工具!

2.安装Android SDK 并配置环境变量(在java+appium中总结过,本节不做具体介绍)。

3.monkey脚本编写步骤

(1)获取包名和入口activity(获取夜神模拟器中的应用apk的包名和类名)

  ①如果获取的apk是第三方的应用程序如何获取包名和类名(如百度地图apk)

  打开cmd首先通过 adb connect 127.0.0.1:62001连接夜神模拟器
  cd D:\appium\adt-bundle-windows-x86_64-20140702\sdk\build-tools\android-4.4W
  adb shell
  cd /data/app
  ls
  com.baidu.BaiduMap-1.apk
  exit
  //准备把apk拿出来
  adb pull /data/app/com.baidu.BaiduMap-1.apk D:\appium\apk

  

  

  ②如果获取的apk是手机本地的应用程序如何获取包名和类名(如本地浏览器apk)

  adb shell
  cd /system
  ls
  cd /app 或者 cd /priv-app
  ls
  //准备把Browser.apk拿出来
  adb pull /system/app/Browser.apk D:\appium\apk

  

  

  

  package: name='com.android.browser'

  launchable-activity: name='com.android.browser.BrowserActivity'

(2)在手机上获取相应的像素点坐标(利用SDK自带的uiautomatorviewer.bat或者开发者选项中的坐标位置)

  首先打开模拟器关于手机页面,双击版本号打开开发者模式,然后进入开发者选项选择如下:

  

(3)编写脚本并检查脚本

#头文件,控制monkey发送消息的参数
type = raw events
count = 10
speed = 1.0
#以下上monkey命令
start data >>
#打开测试应用的程序
LaunchActivity(com.android.browser,com.android.browser.BrowserActivity)
#加等待
UserWait(8000)
Tab(128,70)
#输入网址: https://www.monkey.org/
DispatchString(https://www.monkey.org/)
UserWait(5000)
#Enter
DispatchPress(KEYCODE_ENTER)
#输入Home键返回到桌面
#DispatchPress(KEYCODE_HOME)

(4)运行脚本
  将文件放到手机中:adb push 本地monkey脚本文件 /data/local/tmp

  adb push sh D:\appium\Monkey_TestCase\openBrowser.txt /data/local/tmp

  

  运行文件:adb shell monkey -f 手机文件地址/文件名称 执行数量

  adb shell monkey -f /data/local/tmp/openBrowser.txt 1

  

(5)安卓键值扩展参考地址:https://www.cnblogs.com/xiaozhaoboke/p/10029488.html

小结:通过学习后自我实践总结,如有不足之处,请大神指出,分享给正在学习monkey的小白,仅供参考!

Monkey自动化脚本(一)的更多相关文章

  1. 自动化脚本中click()或sendKeys()没有反应

    前提: 排除xpath引用错误或元素的xpath每次都不同的情形. 问题描述 自动化脚本中click()方法和sendKeys()方法报错, 返回异常InvocationTargetException ...

  2. appium-desktop录制脚本二次开发,生成我司自动化脚本

    目的 通过对appium-desktop脚本录制功能进行二次开发,使录制的java脚本符合我司自动化框架要求. 实现步骤 1.增加元素名称的输入框 由于ATK(我司自动化测试框架)脚本中元素是以“ap ...

  3. Jenkins构建自动化脚本执行无界面解决方法

    场景: jenkins构建selenium自动化用例的时候,会有jenkins自带服务后台运行自动化脚本,可无界面运行IE.Chrome.Firefox. 然而运行IE浏览器时候(IE比较特殊),Je ...

  4. 【Zabbix】Zabbix-agent自动化脚本

    zabbix-agent自动化脚本 作用:批量部署zabbix-agent.用于上百台虚拟机都可以被Zabbix监控. 脚本名:inst-agent.sh #!/bin/bash echo " ...

  5. PHP学习日记 Windows配置PHP+Nginx+自动化脚本

    Windows配置PHP+Nginx+自动化脚本 安装与配置 PHP 下载PHP:传送门 选择合适的版本下载 尽量选Thread Safe 配置PHP: 解压后在文件夹中找到php.ini-devel ...

  6. python_selenium之第一个自动化脚本

    python_selenium之第一个自动化脚本 上一节介绍了xpath的使用,接下来完成第一个自动化脚本 一.步骤: 1. 这里使用火狐浏览器,首先打开火狐浏览器 2. 使浏览器窗口最大化 3.输入 ...

  7. 【转】jenkins上配置robotframeworkride自动化脚本任务

    jenkins上配置robotframeworkride自动化脚本任务 编写好的自动化脚本,集成在jenkins上进行自动运行于监控,这里采用分布式构建,在一台slave上进行任务构建与自动化脚本的运 ...

  8. Python+selenium第一个自动化脚本

    第一个自动化脚本(用Python写的) from selenium import webdriver  #从selenium导入webdriber driver=webdriber.Firefox() ...

  9. Jmeter 接口自动化-脚本数据分离实例

    一. 背景:  为了让大家更加的了解Jmeter,并且使用起来游刃有余.这篇我们主要讲一下,如何优雅的使用Jmeter一步步的实现接口自动化,完成脚本与数据分离,把可能对Jmeter脚本的维护转移到c ...

随机推荐

  1. 使用埃拉托色尼筛选法(the Sieve of Eratosthenes)在一定范围内求素数及反素数(Emirp)

    Programming 1.3 In this problem, you'll be asked to find all the prime numbers from 1 to 1000. Prime ...

  2. Git各个状态之间转换指令总结

    基本状态标识 A- = untracked 未跟踪 A = tracked 已跟踪未修改 A+ = modified - 已修改未暂存 B = staged - 已暂存未提交 C = committe ...

  3. vue非父子组件之间的通信

    https://www.cnblogs.com/chengduxiaoc/p/7099552.html   //vm.$emit( event, arg ) //触发当前实例上的事件 //vm.$on ...

  4. 【apache】No input file specified

    默认的 RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]规则在apache fastcgi模式下会导致No input file specified. 修改成 Re ...

  5. 上海上传数据重复-sftp端口关闭

    关键: (1) sftp的测试指令:sftp -oPort=2125 meituan@220.248.104.170 (2)让上海那边自己试了一下,也不行,他们自己重置了一下sftp的密码,我们可以登 ...

  6. 洛谷 P1088 火星人

    https://www.luogu.org/problemnew/show/P1088 这个题一开始是很蒙的 感觉很麻烦,每次都要交换balabala..... 后来才知道有这么一个神奇的stl 真是 ...

  7. bis和bic命令实现或和异或运算

    从20世纪70年代末到80年代末,Digital Equipment的VAX计算机是一种非常流行的机型.它没有布尔运算AND和OR指令,只有bis(位设置)和bic(位清除)这两种指令.两种指令的输入 ...

  8. Eclipse maven hadoop -- java.io.IOException: No FileSystem for scheme: hdfs

    2019-01-10 概述 今天在Windows系统下新安装了Eclipse和maven的环境,想利用Maven构建一个Hadoop程序的,结果却发现程序运行时一直报 “No FileSystem f ...

  9. 爬虫 requests 模块

    requests 模块 介绍 使用requests可以模拟浏览器的请求, 比起之前用到的urllib,requests模块的api更加便捷(本质就是封装了urllib3) ps: requests库发 ...

  10. GWAS条件分析(conditional analysis)

    一.为什么要做GWAS的条件分析(conditional analysis) 我们做GWAS的时候,经常扫出一堆显著的信号,假设rs121是我们扫出来与某表型最显著相关的位点(P=1.351e-36) ...