MonkeyRunner使用指南--初级

2024-01-17 05:48

本文主要是介绍MonkeyRunner使用指南--初级,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

安装ANDROID集成开发环境,配置好环境变量后,就可以使用SDK自带的MonkeyRunner工具进行自动化测试。刚刚开始研究,分享些首次使用MonkeyRunner时遇到的困难和解决放方法。

step1:

安装ANDROID集成开发环境,配置好变量后。启动eclipse--Window--Android Virtual Device Manager,创建一个虚拟设备。这里创建设备名为:cctest


之后启动就可以使用命令行的方式,在cmd界面输入:emulator -avd cctest

等待一段时间后AVD就启动了,等待时间可能较长。如果出现报错,可能是环境变量配置不对,请百度之

step2:

待AVD启动后,命令行界面继续输入monkeyrunner,进入交互模式


在开始使用MonkeyRunner的各种方法前,导入类。命令行输入:

from com.android.monkeyrunner import MonkeyRunner,MonkeyDevice,MonkeyImage


step3:

现在就可以使用各种monkeyrunner的类方法了。首先获取当前连接的设备,命令行输入:device=MonkeyRunner.waitForConnection()


这句的意思是获取当前连接的设备,创建一个MonkeyDevice实例device,实例名可以任意取

waitForConnection方法默认有2个参数,指定等待连接时间和连接设备名。如果只连接了一个设备,参数可以不填,等待时间默认为永久等待

step4:

如果待测程序已经安装,则可跳过本步骤。如果还没安装,把安装程序的APK包保存在本地,使用命令行安装:device.installPackage("d:/2100.apk")


安装成功后会返回True."d:/2100.apk"为本地apk路径,注意这里路径中的 "/",为左斜杠

顺便提一句,卸载已安装的程序时,需要知道程序包名。卸载的命令行指令为:device.removePackage("xxx.xxx")

step5:

程序安装好后,接下来启动待测程序。启动前需要知道待测试程序的包名和入口activiy名称。这里使用sdk包里自带的工具:aapt

在sdk包的build-tools目录下寻找appt路径


新开一个cmd窗口,定位到该路径下,执行命令:appt dump badging d:\2100.apk

package: name=包名

launchable-activity: name=入口activity名。

切换回原来的cmd窗口,执行命令:

device.startActivity(component = "xxx.xxx/xxx.xxx.xxx")

前面为包名,后面是入口activity名

执行成功后,可以看到模拟器上对应的程序已启动。在编写自动化脚本时,可以在执行程序启动后加入等待时间: device.sleep(N) N为等待秒

step6:

至此,需要测试的程序已启动。可以使用press(),touch(),drag(),type()方法发送模拟按键、触摸、拖曳、输入字符串操作了。详细参考MonkeyDevice说明 http://wiki.eoeandroid.com/MonkeyDevice

 


这篇关于MonkeyRunner使用指南--初级的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/615033

相关文章

Deepseek使用指南与提问优化策略方式

《Deepseek使用指南与提问优化策略方式》本文介绍了DeepSeek语义搜索引擎的核心功能、集成方法及优化提问策略,通过自然语言处理和机器学习提供精准搜索结果,适用于智能客服、知识库检索等领域... 目录序言1. DeepSeek 概述2. DeepSeek 的集成与使用2.1 DeepSeek API

Rsnapshot怎么用? 基于Rsync的强大Linux备份工具使用指南

《Rsnapshot怎么用?基于Rsync的强大Linux备份工具使用指南》Rsnapshot不仅可以备份本地文件,还能通过SSH备份远程文件,接下来详细介绍如何安装、配置和使用Rsnaps... Rsnapshot 是一款开源的文件系统快照工具。它结合了 Rsync 和 SSH 的能力,可以帮助你在 li

什么是cron? Linux系统下Cron定时任务使用指南

《什么是cron?Linux系统下Cron定时任务使用指南》在日常的Linux系统管理和维护中,定时执行任务是非常常见的需求,你可能需要每天执行备份任务、清理系统日志或运行特定的脚本,而不想每天... 在管理 linux 服务器的过程中,总有一些任务需要我们定期或重复执行。就比如备份任务,通常会选在服务器资

【生成模型系列(初级)】嵌入(Embedding)方程——自然语言处理的数学灵魂【通俗理解】

【通俗理解】嵌入(Embedding)方程——自然语言处理的数学灵魂 关键词提炼 #嵌入方程 #自然语言处理 #词向量 #机器学习 #神经网络 #向量空间模型 #Siri #Google翻译 #AlexNet 第一节:嵌入方程的类比与核心概念【尽可能通俗】 嵌入方程可以被看作是自然语言处理中的“翻译机”,它将文本中的单词或短语转换成计算机能够理解的数学形式,即向量。 正如翻译机将一种语言

JAVA初级掌握的J2SE知识(二)和Java核心的API

/** 这篇文章送给所有学习java的同学,请大家检验一下自己,不要自满,你们正在学习java的路上,你们要加油,蜕变是个痛苦的过程,忍受过后,才会蜕变! */ Java的核心API是非常庞大的,这给开发者来说带来了很大的方便,经常人有评论,java让程序员变傻。 但是一些内容我认为是必须掌握的,否则不可以熟练运用java,也不会使用就很难办了。 1、java.lang包下的80%以上的类

JAVA初级掌握的J2SE知识(一)

时常看到一些人说掌握了Java,但是让他们用Java做一个实际的项目可能又困难重重,在这里,笔者根据自己的一点理解斗胆提出自己的一些对掌握Java这个说法的标准,当然对于新手,也可以提供一个需要学习哪些内容的参考。另外这个标准仅限于J2SE部分,J2EE部分的内容有时间再另说。 1、语法:必须比较熟悉,在写代码的时候IDE的编辑器对某一行报错应该能够根据报错信息知道是什么样的语法错误并且知道

Maven使用指南的笔记

文档索引 Maven in 5 Minutes 篇幅很短,快速上手,不求甚解。 执行如下命令,创建项目的基础配置。 mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1

找不同-第15届蓝桥省赛Scratch初级组真题第4题

[导读]:超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成,后续会不定期解读蓝桥杯真题,这是Scratch蓝桥杯真题解析第183讲。 如果想持续关注Scratch蓝桥真题解读,可以点击《Scratch蓝桥杯历年真题》并订阅合集,查阅教程更方便。 第15届蓝桥杯省赛已于2024年8月24日落下帷幕,编程题一共有5题,分别如下: 猪八戒落地 游乐场 画西瓜 找不同 消

OWASP ZAP2.4.3使用指南(中文版)

OWASP ZAP是一款开源的web安全工具,它简单易用,与burp suite相似,主要功能包含了:代理、数据拦截修改、主动扫描、被动扫描、主动攻击、爬虫、fuzzing、渗透测试等。在国外安全圈和渗透测试领域应用非常广泛,在youtube上有许多关于ZAP的视频资料。与burp suite相比,前者是一款商业渗透测试工具,部分功能不能使用,国内的大部分使用者都使用的破解版,而ZAP是开源免费的

Circuitjs 在线电路模拟器使用指南

Circuitjs 是一款 web 在线电路模拟器, 可以在浏览器上方便地模拟各种模拟或数字的电路, 用户无需安装各种软件, 生成的电路也支持在线分享给其它用户. 网址是 https://cc.xiaogd.net/. 当前版本为 v2.9.0 cc 为 circuit 的简写, 也即是电路的意思. 版本说明 在模拟器右侧栏增加了版本的说明. 另外, 在 菜单--关于 的弹出窗