利用 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设计】网站的支持!

相关文章

python写一个随机点名软件的实例

python写一个随机点名软件的实例

最近有个随机点名软件的需求,故写了一个,上代码:github地址 # -*- coding: utf-8 -*- # @Time : 18-12-31 下午4:21 # @Auth...

使用Python的Treq on Twisted来进行HTTP压力测试

从事API相关的工作很有挑战性,在高峰期保持系统的稳定及健壮性就是其中之一,这也是我们在Mailgun做很多压力测试的原因。 这么久以来,我们已经尝试了很多种方法,从简单的ApacheB...

Python解析json之ValueError: Expecting property name enclosed in double quotes: line 1 column 2(char 1)

前言 在Python中提供了json包来方便快捷的解析json字串的转换过程,但是碰到了一个比较奇怪的问题,就是不太正确的json串如何来解析? 1. 问题的提出 今天在处理一个http...

学Python 3的理由和必要性

Python很多年前就已经出现了,并且还在不断发展。本书第1版基 于Python 1.5.2,Python 2.x作为主流版本已经持续了很多年。本书是基 于Python 3.6的,并在P...

tensorflow建立一个简单的神经网络的方法

tensorflow建立一个简单的神经网络的方法

本笔记目的是通过tensorflow实现一个两层的神经网络。目的是实现一个二次函数的拟合。 如何添加一层网络 代码如下: def add_layer(inputs, in_size,...