Monkeyrunner工具测试

Monkey工具直接运行在设备或模拟器的adb shell中,生成用户或系统的伪随机事件流。
Monkeyrunner工具是在工作站上通过API定义的特定命令和事件控制设备或模拟器。

1.基本知识

Monkeyrunner最主要是通过运行程序,在程序中提供按键或触摸事件的输入数值然后截屏,通过截屏对比是否是正常的运行。

Monkeyrunner工具提供了一套API让用户/测试人员来调用,调用这些api可以控制一个Android设备或模拟器,而不需要了解对应的源码。支持java和Python两种语言脚本。

有了Monkeyrunner,我们可以编写python脚本来控制apk包的安装和卸载、启动app、向app发送各种动作事件、截取图片并保存。(设备及UI界面操作,其实,涉及到Android设备的操作,使用开发环境自带的adb已经足够了,而Monkeyrunner也是将adb操作封装了以下而已.)。

除此之外,MonkeyRunner是Google提供的一个基于坐标点的Android黑盒自动化测试工具。所以,要使用Monkeyrunner进行自动化测试,首先,要了解Monkeyrunner中获取坐标点的方式。

2.搭建环境

(目前已搭建好monkeyrunner环境,运行Python脚本进行操控)JDK、SDK(点击SDKmanager下载各种api)、Python、monkeyrunner、eclipse、ADT、jython(导入各种jar包)

Monkeyrunner API
主要包括三个模块
1、MonkeyRunner:这个类提供了用于连接monkeyrunner和设备或模拟器的方法,它还提供了用于创建用户界面显示提供了方法。
2、MonkeyDevice:代表一个设备或模拟器。这个类为安装和卸载包、开启Activity、发送按键和触摸事件、运行测试包等提供了方法。
3、MonkeyImage:这个类提供了捕捉屏幕的方法。这个类为截图、将位图转换成各种格式、对比两个MonkeyImage对象、将image保存到文件等提供了方法。

3.遇到的问题和解决方法

  • 3.1

模拟器开启不了原因是SDK没有HAXM,换了一个有HAXM的SDK却发现勾上install按钮是置灰的,最后是单独下载了一个HAXM安装后,成功启动模拟器。

  • 3.2

新增 jython interpreter的时候总报错,原因是要SDK下jython.jar的,而不是自己网上down的:F:\android-sdk_r24.4.1-windows\android-sdk-windows\tools\lib\jython-standalone-2.5.3.jar

  • 3.3

monkeyrunner运行py文件时,会失败报错.python中默认的编码格式是ASCII格式,解决方法:在每一个需要显示中文的python文件中,首行加入# -- coding:utf-8 --

  • 3.4

ADT插件安装后,没有
在这里插入图片描述
解决方法:
在这里插入图片描述

  • 3.5

Monkeyrunner需要通过获取控件坐标或控件ID,编写脚本运行。所以我们采取通过Hierarchy Viewer获取控件ID编写脚本(打开android-sdk\tools下面的hierarchyviewer.bat,运行)才会显示模拟器
在这里插入图片描述
4.安卓设备模拟器

夜神模拟器

提供操作助手功能,录制使用者在测试APP时的操作,保存为夜神特定的脚本形式,可以回放这些操作

发布了22 篇原创文章 · 获赞 5 · 访问量 4317

猜你喜欢

转载自blog.csdn.net/weixin_42231208/article/details/96695558