Android自动化测试工具之monkeyrunner 介绍

来源:互联网 发布:淘宝开店保证金交不了 编辑:程序博客网 时间:2024/04/30 12:04

安卓手机自动化测试框架

             monkeyrunner工具

come from: http://www.cnblogs.com/yyangblog/archive/2011/03/10/1980086.html

一。什么是monkeyrunner
monkeyrunner工具提供了一个API,使用此API写出的程序可以再Android代码之外控制Android设备和虚拟器。

通过monkeyrunner,你也可以写一个Python程序去安装一个Android应用程序或测试包,运行它,向它发送模拟

击键,截取用户图形界面,并将图片保存在工作站中。monkeyrunner工具的主要设计母的是用于测试功能/框架

水平上的应用程序和设备,或用于运行单元测试套件,但你也可以用于其他目的。

二。monkeyrunner工具与monkey工具的区别
monkey:
monkey工具是直接运行在Android设备的或者模拟器的adb shell中, 生产用户或者系统的伪随机事件流。

monkeyrunner:
monkeyrunner工具则是在工作站上通过API定义的特定命令和事件 控制设备或虚拟器。

三。monkeyrunner的测试类型
1.多设备控制:monkeyrunner API可以跨多个设备或虚拟器实施测试套件。您可以在同一时间连接所有的设备

或一次启动全部模拟器,依据程序依次连接到每一个,然后运行一个或多个测试。您也可以用程序启动一个配

置好的模拟器,运行一个或多个测试,然后关闭模拟器。
2.功能测试:monkeyrunner可以为一个应用自动贯彻依次功能测试。你提供按键或触摸事件的输入数值,然后

观察Android屏幕的输出。
3.回归测试:monkeyrunner可以运行一个应用,并将其结果截屏与既定已知正确的结果截屏相比较,以此测试

应用的稳定性。
4.可扩展的自动化:由于monkeyrunner是一个API工具包,你可以基于Python开发一整套系统,来控制Android

设备。除了使用monkeyrunner  API外,你还可以使用标准的Python  os和subprocess模块来调用Android

Debug Bridge这样的Android工具。

四。运行monkeyrunner
您可以直接使用一个代码文件运行monkeyrunner,抑或在交互式对话中输入monkeyrunner语句。不论使用哪种

方式,您都需要调用SDK目录的tools子目录下的monkeyrunner命令。如果您提供一个文件名作为运行参数,则

monkeyrunner将视文件内容为Python程序,并加以运行;否则,它将提供一个交互对话环境。

monkeyrunner的命令语法为:

monkeyrunner -plugin <plugin_jar> <program_filename> <program_options>

命令行下输入adb,会显示所有可用命令,当Android设备连接电脑后,命令行模式下输入adb shell进入

Android系统。可以使用ls、cd、等命令。



参考资料:http://www.cnblogs.com/yyangblog/archive/2011/03/10/1980086.html


The monkeyrunner API


The monkeyrunner API is contained in three modules in the package com.android.monkeyrunner:

  • MonkeyRunner: A class of utility methods for monkeyrunner programs. This class provides a method for connecting monkeyrunner to a device or emulator. It also provides methods for creating UIs for a monkeyrunner program and for displaying the built-in help.
  • MonkeyDevice: Represents a device or emulator. This class provides methods for installing and uninstalling packages, starting an Activity, and sending keyboard or touch events to an application. You also use this class to run test packages.
  • MonkeyImage: Represents a screen capture image. This class provides methods for capturing screens, converting bitmap images to various formats, comparing two MonkeyImage objects, and writing an image to a file.

运行monkeyrunner程序

monkeyrunner -plugin <plugin_jar> <program_filename> <program_options>


monkeyrunner Built-in Help内建帮助


You can generate an API reference for monkeyrunner by running:

monkeyrunner help.py <format> <outfile>

The arguments are:

  • <format> is either text for plain text output or html for HTML output.
  • <outfile> is a path-qualified name for the output file.

0 0
原创粉丝点击