安卓自动化测试案例(跑在MonkeyRunner上)
首先文件所在目录:

MonkeyRunner所在目录:

运行命令(通过cd 命令 进入Tools目录下):

运行脚本:monkeyrunner.bat ..\honeywell\jsq.py
源文件代码为:
# coding=utf-8 import sys
from com.android.monkeyrunner import MonkeyRunner as mr,MonkeyDevice
from com.android.monkeyrunner.easy import EasyMonkeyDevice,By
from com.android.chimpchat.hierarchyviewer import HierarchyViewer #连接设备
device = mr.waitForConnection(30,"emulator-5554")
if not device:
print >> sys.stderr,"fail"
sys.exit(1)
#连接设备完成
mr.sleep(2.0)
#打开主屏幕-根据ResourceId
# #
upArrow="id/all_apps_handle"
easy_device = EasyMonkeyDevice(device)
easy_device.touch(By.id(upArrow), MonkeyDevice.DOWN_AND_UP)
mr.sleep(2.0)
#启动Activity 打开拨号键
activityName="com.android.dialer/.DialtactsActivity"
device.startActivity(component = activityName)
#等待时间,防止操作太快,设备反应不及时
mr.sleep(2.0) #点击添加拨号动作
action_button="id/floating_action_button" easy_device.touch(By.id(action_button), MonkeyDevice.DOWN_AND_UP)
mr.sleep(2.0)
#开始拨号
button_1="id/one"
button_2="id/two"
button_3="id/three"
button_4="id/four"
button_5="id/five"
button_6="id/six"
button_7="id/seven"
button_8="id/eight"
button_9="id/nine"
button_0="id/zero"
easy_device.touch(By.id(button_1), MonkeyDevice.DOWN_AND_UP) easy_device.touch(By.id(button_8), MonkeyDevice.DOWN_AND_UP) easy_device.touch(By.id(button_9), MonkeyDevice.DOWN_AND_UP) easy_device.touch(By.id(button_1), MonkeyDevice.DOWN_AND_UP) easy_device.touch(By.id(button_1), MonkeyDevice.DOWN_AND_UP) easy_device.touch(By.id(button_6), MonkeyDevice.DOWN_AND_UP) easy_device.touch(By.id(button_9), MonkeyDevice.DOWN_AND_UP) easy_device.touch(By.id(button_5), MonkeyDevice.DOWN_AND_UP) easy_device.touch(By.id(button_0), MonkeyDevice.DOWN_AND_UP) easy_device.touch(By.id(button_8), MonkeyDevice.DOWN_AND_UP) easy_device.touch(By.id(button_7), MonkeyDevice.DOWN_AND_UP)
mr.sleep(2.0)
#添加联系人
createNewId="id/cliv_name_textview"
easy_device.touch(By.id(createNewId), MonkeyDevice.DOWN_AND_UP)
mr.sleep(2.0)
#姓名输入 获取焦点
device.touch(300,1060,'DOWN_AND_UP')
mr.sleep(1.0)
#输入
device.type('JackChen')
mr.sleep(2.0)
#关闭键盘
device.press('KEYCODE_BACK',MonkeyDevice.DOWN_AND_UP)
#保存联系人
mr.sleep(2.0)
menu_save="id/menu_save"
easy_device.touch(By.id(menu_save), MonkeyDevice.DOWN_AND_UP)
mr.sleep(2.0)
device.press('KEYCODE_HOME',MonkeyDevice.DOWN_AND_UP)
mr.sleep(2.0)
componentName='com.google.android.apps.messaging/.ui.ConversationListActivity'
#启动特定的Activity
device.startActivity(component = componentName)
mr.sleep(2.0)
#新建信息
messageAdd="id/start_new_conversation_button"
easy_device.touch(By.id(messageAdd), MonkeyDevice.DOWN_AND_UP)
mr.sleep(2.0)
numText="id/recipient_text_view"
easy_device.touch(By.id(numText), MonkeyDevice.DOWN_AND_UP)
mr.sleep(1.0) device.type('')
mr.sleep(3.0)
#点击10086
device.touch(301,300,'DOWN_AND_UP')
mr.sleep(2.0)
device.press('KEYCODE_BACK',MonkeyDevice.DOWN_AND_UP)
mr.sleep(1.0)
messageTxt="id/compose_message_text"
easy_device.touch(By.id(messageTxt), MonkeyDevice.DOWN_AND_UP)
mr.sleep(1.0)
device.type('Hello,jack') #等待时间,防止操作太快,设备反应不及时
mr.sleep(1.0)
btn_send="id/self_send_icon"
easy_device.touch(By.id(btn_send), MonkeyDevice.DOWN_AND_UP) mr.sleep(3.0)
conversationImg = device.takeSnapshot()
conversationImg.writeToFile('d:\\SendMessage.png','png');
@陈卧龙的博客
安卓自动化测试案例(跑在MonkeyRunner上)的更多相关文章
- 《Python自动化测试修炼宝典》线上课程已经成功入驻网易云课堂......
<Python自动化测试修炼宝典>线上课程已经成功入驻网易云课堂...... IT测试老兵利用工作之余,亲自录制的<Python自动化测试修炼宝典>线上课程已经成功入驻网易云课 ...
- .NET跨平台之旅:生产环境中第2个跑在Linux上的ASP.NET Core站点
今天我们在生产环境中上线了第2个跑在Linux上的ASP.NET Core站点.这是一个简单的Web API站点,通过命令行的方式调用安装在Linux服务器上的程序完成操作.之前用的是nodejs,现 ...
- .Net程序跑在Linux上
.Net越来越拥抱开源了,今天就试了如何让.Net程序跑在Linux上,果然再无人可以阻挡.Net的脚步了. Linux Disibutaion:Open Logic 7.2 1.Install .N ...
- 如何快速把安卓应用移植到BlackBerry 10上
如何快速把安卓应用移植到BlackBerry 10上 相关博客: BlackBerry相关文档 http://developer.blackberry.com/android/documentatio ...
- 案例实战:每日上亿请求量的电商系统,JVM年轻代垃圾回收参数如何优化?
出自:http://1t.click/7TJ 目录: 案例背景引入 特殊的电商大促场景 抗住大促的瞬时压力需要几台机器? 大促高峰期订单系统的内存使用模型估算 内存到底该如何分配? 新生代垃圾回收优化 ...
- 是时候考虑让你的Spark跑在K8S上了
[摘要] Spark社区在2.3版本开始,已经可以很好的支持跑着Kubernetes上了.这样对于统一资源池,提高整体资源利用率,降低运维成本(特别是技术栈归一)有着非常大的帮助.这些趋势是一个大数据 ...
- android 自动化测试案例之 MonkeyRunner
#-*- coding: UTF-8 -*- #上面第一行是设置文件编码,windows下第一行必须是这个#文件名 MonkeyRunner.py#功能: 使用monkey runner测试app,此 ...
- 安卓自动化测试工具MonkeyRunner之使用ID进行参数化,以及List选择某项和弹出框点击确定的写法
一.List选择某项的操作步骤: 1.通过父结点得出列表各子项 2.将选择项的文本与列表中的子项进行比较 3.计算出选择项的坐标位置 截取实例: from com.android.monkeyrunn ...
- APP自动化测试中Monkey和 MonkeyRunner
在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程步步执行测试,得到实际结果与期望结果的比较.在此过程中,为了节省人力.时间或硬件资源,提高测试效率,便引入了自动化测试的概念.自动化测 ...
随机推荐
- Jenkins 开启用户注册机制及用户权限设置
Jenkins 开启用户注册机制及用户权限设置 by:授客 QQ:1033553122 步骤 1. 系统管理-Configure Global Security 2. 设置
- JVM内核优化
1.垃圾回收器 JVM垃圾回收器有串行和并行两种. 1.1 Serial收集器(串行,单线程),现在使用较少 Serial一般收集新生代 SerialOld一般收集老年代(采用标记压缩算法) 1.2 ...
- [20171225]查看并行执行计划注意的问题.txt
[20171225]查看并行执行计划注意的问题.txt --//如果使用dbms_xplan.display_cursor查看并行执行计划注意一些问题,通过例子说明: 1.环境: SCOTT@book ...
- js实现页面锚点定位动画滚动
项目上需要的效果,个人不想用jquery实现,想着用js自己试试,花了点儿时间,终于实现.. 上干货.. function scrollTo(y, duration) { /*y:目标纵坐标,dura ...
- 转:IIS 应用程序池 内存 自动回收
原文地址:https://www.cnblogs.com/guohu/p/5209209.html IIS可以设置定时自动回收,默认回收是1740分钟,也就是29小时.IIS自动回收相当于服务器IIS ...
- pkg-config 用法
在进行使用fuse 2.9写程序的时候,遇到了pkg-config 命令和 .pc 文件.本篇博客就具体说明一下pkg-config 命令是什么? 我们首先看一下: gcc -Wall hello.c ...
- 【PAT】B1055 集体照(25 分)
很简单的two points问题 ##注意:K是行数 #include<stdio.h> #include<string.h> #include<map> #inc ...
- 【PAT】B1057 数零壹(20 分)
简单题,简单字符串处理加简单数学进制转换 #include<stdio.h> #include<string.h> #include<ctype.h> int ma ...
- Java设计模式之一 ----- 单例模式
什么是单例模式 保证一个系统中的某个类只有一个实例而且该实例易于外界访问.例如Windows界面的任务管理器就可以看做是一个单例. 单例模式的使用场景 需要频繁的进行创建和销毁的对象: 创建对象时耗时 ...
- 第一章 Bootstrasp起步
模板如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf ...