AndroidRobot User Manual41 Spider.docx
- 文档编号:13544117
- 上传时间:2023-06-15
- 格式:DOCX
- 页数:15
- 大小:561.86KB
AndroidRobot User Manual41 Spider.docx
《AndroidRobot User Manual41 Spider.docx》由会员分享,可在线阅读,更多相关《AndroidRobot User Manual41 Spider.docx(15页珍藏版)》请在冰点文库上搜索。
AndroidRobotUserManual41Spider
SoftwareUserGuide
------AndroidRobot_V4.1Spider
Jan30,2013
1运行环境配置
1.1安装设备驱动程序
确保设备驱动程序安装正常,在DOS命令中输入adbdevices能够看到设备adbserialnumber即为配置正确。
2功能简介
主界面
1,项目浏览
用户在【项目浏览】区域建立自己的项目以及管理自己的脚本、图片、Log等。
2,手机设备
【手机设备】区域自动显示目前用户PC上面所连接的所有手机,如“HTCNexusOne”。
3,脚本编辑区域
用户可以在脚本编辑区域编辑自己创建的脚本,脚本支持Python语法,该区域对于Androidrobot的API带有自动提示功能,只需要用户输入“devce[i]”自动提示就会启动,帮助用户自动寻找他所要调用的API,如果是Python的API目前还不带有自动提示功能,
如下图:
4,测试用例
Log区域中的【测试用例】主要展示给用户当前每台设备跑了哪些脚本,脚本的运行进度、开始时间、结束时间、结果等。
5,日志信息
Log区域中的【日志】显示的每台设备当前运行的每一个步骤以及步骤执行的结果,如下图:
6,ADB
Log区域中的【ADB】显示每台设备的ADBlogcat中的信息,便于用户查看。
如下图:
7,任务管理
用户通过【任务管理】对每一个工程配置任务;
8,工具栏button功能
【功能】从左到右,依次为:
录制脚本(F9),停止录制(F10),设置比对信息(F11),生成比对代码(F12),手机back键,手机menu键,手机home键,Input(录制脚本时文本输入)。
3脚本录制
3.1创建工程
1,创建项目:
文件新建项目输入项目名称。
生成3个文件夹分别是Logs、Pictures、Scripts。
2,创建脚本:
选择以上Scripts目录。
文件新建脚本输入脚本名称。
3.2录制
将鼠标定位在刚刚创建好的脚本的任意一行,表示录制的脚本将从该行开始记录。
点击工具栏中录制(F9)按钮。
如下图所示。
当出现类似模拟器窗口时,用户可以对模拟器进行操作,此时所有操作已记录在脚本中。
4脚本编辑
用户可以双击任意脚本,在【脚本编辑】区域手动输入脚本,该脚本必须遵循Python语法。
新建脚本后会自动生成如下界面:
◆第一步用户首先需要对红色区域的屏幕尺寸做修改
例如:
robot.screen(320,480)---表示当前脚本是在分辨率为320,480的手机上面录制,如果运行在其他分辨率手机中,Androidrobot会自适应屏幕。
如果用户不需要脚本自适应屏幕可以将这个语句删除。
◆第二步用户可以录制或者编写脚本,脚本遵循python语法规则。
具体可以参见:
Python简明教程:
5设置比对信息和修改比对信息
【设置比对信息】为用户自动生成图片比对信息。
1,先选择Pictures节点下面任意一张图片,如果没有图片可以通过截屏存放一张图片在此目录中。
2,单击工具栏中【设置比对信息】
按钮,入下图:
我们可以用鼠标在图片区域,选择我们需要比对的图片。
脚本例如:
ret=device[0].checkScreen('HTC_Orange\\Pictures\\CALL.png','90%')
ifret==True:
device[0].setResult('True')
else:
device[0].setResult('False')
6脚本回放
脚本回放步骤:
1,在【手机设备】区域选择需要回放的设备名称。
如下图
右击选择HTC…手机
加入某个工程中,我们能在工程【HTC_Orange】下面的Device中看到改设备:
2,在【任务管理】我们在任务管理中选择需要运行的任务,如下图:
3,单击工具栏中运行按钮。
7API(Python)
AndroidRobot提供以下API:
用户通过对象“robot.”调用Robot所提供的API。
startActivity(Stringurl)
通过Activity启动某个应用程序。
参数:
URL:
Activity的值
browser="com.UCMobile/.main.UCMobile"
screen(intwidth,intheight)
当前脚本坐标所对应的屏幕分辨率。
参数:
Intwidth–屏幕宽度
Intheight–屏幕高度
设置了该函数后,坐标位置会随着实际的屏幕不一样而自动做相应的偏移
这在应用APK测试中可以自动适应各种分辨率的屏幕。
如果不设置该函数,工具不自动做相应偏移,实际坐标为多少即为多少。
touch(intx,inty)
根据坐标点击
参数:
Intx–点击的x坐标
Inty–点击的y坐标
longTouch(intx,inty)
根据坐标点击
参数:
Intx–点击的x坐标
Inty–点击的y坐标
StringgetString(Stringname)
获得properties文件中的参数值。
系统会根据设备的serialnumber.Name在properties文件中找对应的值。
参数:
Name–properties文件中的元素名称
返回值:
String–返回properties中对应的name的元素值。
BooleanfindTextById(Stringid,Stringtext)
根据ID查找对应的text。
参数:
StringID–应用程序控件的ID。
Stringtext–控件的名字。
返回值:
True–找到id对应的text值
False–没有找到id对应的text值
BooleanfindText(Stringtext)
根据字符串内容查找控件
参数:
Stringtext–待查找的字符串内容
返回值:
True–找到text
False–没有找到text
touchViewByText(Stringtext)
点击指定的控件
参数:
Stringtext–待点击的控件名字
touchViewById(Stringid)
根据ID点击指定的控件
参数:
Stringid–控件的ID
back()
Back按键
up()
Up按键
down()
导航键Down
left()
导航键Left
right()
导航键Right
menu()
Menu按键
search()
Search按键
wake()
唤醒手机,能够点亮手机屏幕
home()
手机Home按键
call()
手机拨电话键
volumeDown()
手机音量键
volumeUp()
手机音量键
input(Stringcontext)
模拟英语键盘
参数:
Stringcontext–待输入的字符串(可以是任意字符,目前不支持中文输入)
installAPK(StringapkFile)
安装应用程序
参数:
StringapkFile–待安装的apk文件路径
drag(intsX,intsY,inteX,inteY)
模拟拖动行为
参数:
IntsX–开始点的x坐标
IntsY–开始点的y坐标
InteX–结束点的x坐标
InteY–结束点的y坐标
longTouchMove(intsX,intsY,inteX,inteY)
模拟长按并拖动行为
参数:
IntsX–开始点的x坐标
IntsY–开始点的y坐标
InteX–结束点的x坐标
InteY–结束点的y坐标
VoidSend(StringscriptFileName)
通过TCP/IP发送指令给从测设备去执行。
参数:
StringscriptFileName–脚本文件名称
例子:
robot.Send(“hello.py”)
发送给从测手机,让从测手机运行hello.py脚本。
等待脚本运行结束,被测手机继续运行下一条语句。
BooleancheckScreen(Stringprj,Stringsimilarity)
比较图片的相似度,采用像素比较法。
参数:
Stringprj–改图片所在的项目名称
Stringsimilarity–相似度
例子:
checkScreen('HTC_Orange\\Pictures\\CALL.png','90%')
返回值:
True–图片比较成功
False–图片比较失败
8交互测试
7.1被测设备(DUT)
被测设备即我们需要测试的设备,设置被测设备的方法如下:
设置完被测设备,我们需要设置“配对设备”
被测设备配置完毕后,如下图所示:
7.2从测设备
从测设备即辅助被测设备(DUT)的另外一台设备,本例子中从测设备即HTCNexusOne。
在【手机设备】区域单击HTCNexusOne,然后在【项目配置】中配置该从测设备,如下图所示:
7.3“被测设备”与“从测设备”的通讯
1,先运行从测设备,让Socket服务运行起来。
2,再运行被测设备,如下:
robot.Send(“hello.py”)
发送给从测手机,让从测手机运行hello.py脚本。
等待脚本运行结束,被测手机继续运行下一条语句。
9循环执行脚本
如果我们需要将某个脚本或某一段循环执行多次,如下:
foriinrange(3):
robot.back()
10部署APK
用户单击【部署APK】
按钮,可以将选择的APK部署到当前所有手机中。
11完整案例
LiveByTouch.py
#Copyright@MicrotestAutomation
#ScriptAPI
fromcom.android.robotimportAndroidRobot
fromcom.android.deviceimportRobotDevice
importtime
#StartupAPK
paybyfinger="cn.paybyfinger.droid.app/.MainActivity"
robot.startActivity(paybyfinger)
time.sleep(10)
#GotoFunction
robot.touch(52,153)
robot.touch(132,102)
time.sleep(10)
#chooseastore
robot.touch(137,163)
time.sleep(5)
robot.touch(143,201)
robot.touch(87,260)
#checkresult
robot.CheckScreen('GoogleNexusOne','Search1.png',19,34,20,10,'100%')
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- AndroidRobot User Manual41 Spider