利用 Monkey 命令操作屏幕快速滑动

yipeiwu_com6年前Python基础

一、Monkey测试简介

Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕、滑动Trackball、按键等操作来对设备上的程序进行压力测试,检测程序多久的时间会发生异常。

二、Monkey程序介绍

1) Monkey程序由Android系统自带,使用Java语言写成,在Android文件系统中的存放路径是:/system/framework/monkey.jar;

2) Monkey.jar程序是由一个名为“monkey”的Shell脚本来启动执行,shell脚本在Android文件系统中的存放路径是:/system/bin/monkey;这样就可以通过在CMD窗口中执行:adb shell monkey {+命令参数}来进行Monkey测试了。

列表中有 十几种 item,也有几种重型控件 无限滚动的水平 banner 和可以无限垂直滚动的类似淘宝头条的控件。担心会出现内存泄露或者其他问题,于是用 mokey 测试 快速滑动来发现隐藏问题。

运行

monkeyrunner fling.py

查看 android monitor 内存也都释放掉了

测试代码如下

代码如下 fling.py

#!/usr/bin/env monkeyrunner
import time
from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice
device = MonkeyRunner.waitForConnection(5)
# fling up
def scrollUpFling():
device.touch(100, 500, MonkeyDevice.DOWN)
device.touch(100, 100, MonkeyDevice.MOVE)
device.touch(100, 100, MonkeyDevice.UP)
print "fling up"
# fling down
def scrollDownFling():
device.touch(100, 400, MonkeyDevice.DOWN)
device.touch(100, 500, MonkeyDevice.MOVE)
device.touch(100, 500, MonkeyDevice.UP)
print "fling down"
def fling():
for i in range(1,1000):
scrollUpFling()
time.sleep(0.1)
scrollDownFling()
time.sleep(0.1)
fling()

以上所述是小编给大家介绍的利用 Monkey 命令操作屏幕快速滑动,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

Java文件与类动手动脑实例详解

动手动脑1: 使用Files. walkFileTree()找出指定文件夹下所有大于指定大小(比如1M)的文件。 package classJava; import java.io...

Pycharm取消py脚本中SQL识别的方法

Pycharm取消py脚本中SQL识别的方法

Pycharm默认可以识别py脚本中的SQL语句,本身很不错,但当SQL拼接时就显示的代码特别难看,找了好久,终于知道怎么关闭SQL识别功能了。 如下图,把勾去掉就可以了。 以上这篇P...

浅谈PyQt5中异步刷新UI和Python多线程总结

目前任务需要做一个界面程序,PyQt是非常方便的选择,QT丰富的控件以及python方便的编程。近期遇到界面中执行一些后台任务时界面卡死的情况,解决了在这里记录下。 PyQt PyQt简...

TensorFlow Session使用的两种方法小结

TensorFlow Session使用的两种方法小结

TensorFlow Session 在TensorFlow中是通过session进行交互的,使用session有两种方法。下面通过一个简单的例子(两个矩阵相乘)说一下 {[3,1] 与...

分析运行中的 Python 进程详细解析

在 Java 中打印当前线程的方法栈,可以用 kill -3 命令向 JVM 发送一个 OS 信号,JVM 捕捉以后会自动 dump 出来;当然,也可以直接使用 jstack 工具完成,...