android界面自动化测试工具monkeyrunner

使用Python的monkeyrunner进行UI自动化测试
本文介绍如何利用Python编写monkeyrunner脚本进行UI自动化测试,包括新建脚本、执行脚本、记录操作、导出脚本及执行导出的脚本,以及常用的monkeyrunner代码示例。

http://blog.youkuaiyun.com/iris0123456/article/details/7548992

monkeyrunner是利用Python编写执行脚本进行UI自动化测试,模拟用户的操作:

   1,  新建脚本文件monkey.py

2,执行脚本:monkeyrunner monkey.py (将monkey.py放到sdk的tools目录下执行)


3,记录自己的操作,然后导出脚本:

   执行: D:\SDK\android-sdk_r08-windows\android-sdk-windows\tools>monkeyrunner monkey_recorder.py

  会弹出界面: 

   

     

4,导出脚本之后,执行monkeyrunner monkey_playback.py 导出的脚本文件名.mr,之后设备就会按照之前的操作再做一次。



列出常用的代码:

1. #导入模块; 
    from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice, MonkeyImage 

2. #连接当前设备,并返回一个MonkeyDevice对象; 

#第一个参数为等待连接设备时间
#第二个参数为具体连接的设备
device=mr.waitForConnection(1.0,'emulator-5554')
    if not device: 
        print "Please connect a device to start!" 
    else: 
        print "Start " 
    
3. #安装Android包,注意,此方法返回的返回值为boolean,由此可以判断安装过程是否正常 ; 
    device.installPackage('myproject/bin/MyApplication.apk') 

device.removePackage ('com.example.android.notepad') 
print ('卸载成功') 
device.installPackage('ApiDemos.apk') 
print ('安装成功') 

4. #启动一个Activity; 
   device.startActivity 

(component='com.android.htccontacts/com.android.htccontacts.ContactsTabActivity') 

5. #截图; 
    result = device.takeSnapshot() 
    result.writeToFile('C:\\Users\\Martin\\Desktop\\test.png','png') 

6. #时延(秒); 
    MonkeyRunner.sleep(3) 

7. #滑动屏幕; 
    for i in range(1,70): 

        device.drag((250,850),(250,110),0.1,10)

     //开始,结束,持续时间,步骤   

    for i in range(1,70): 
       device.drag((250,110),(250,850),0.1,10) 
   MonkeyRunner.sleep(1) 

8. #触击屏幕; 
    device.touch(507,72,"DOWN_AND_UP") ,也可以用这个模拟坐标点的点击事件

9. #执行adb shell命令; 
    device.shell("input text goup01") 

按下HOME键     device.press('KEYCODE_HOME','DOWN_AND_UP') 
按下BACK键     device.press('KEYCODE_BACK','DOWN_AND_UP') 
按下下导航键     device.press('KEYCODE_DPAD_DOWN','DOWN_AND_UP') 
按下上导航键     device.press('KEYCODE_DPAD_UP','DOWN_AND_UP') 
按下OK键      

device.press('KEYCODE_DPAD_CENTER','DOWN_AND_UP') 
         

相应的按键对应的名称如下: 

home键:KEYCODE_HOME 
back键:KEYCODE_BACK 
send键:KEYCODE_CALL 
end键:KEYCODE_ENDCALL 
上导航键:KEYCODE_DPAD_UP 
下导航键:KEYCODE_DPAD_DOWN 
左导航:KEYCODE_DPAD_LEFT 
右导航键:KEYCODE_DPAD_RIGHT 
ok键:KEYCODE_DPAD_CENTER 
上音量键:KEYCODE_VOLUME_UP 
下音量键:KEYCODE_VOLUME_DOWN 
power键:KEYCODE_POWER 
camera键:KEYCODE_CAMERA 
menu键:KEYCODE_MENU
iTestin3.0.1版本: 简单.强大.专业。 iTestin 基于真实终端设备的脚本录制、回放,验证工具。友好、简便的操作界面,强大的脚本录制功能。适用于Android系统下的Phone和Pad。从简单到深入为Android应用程序测试. iTestin3.0.1实用功能概括: 控件识别与坐标录制脚本 支持脚本本地编辑功能 支持滑屏,长按等操作 支持账号及复杂文本的输入 支持断言、休眠、截屏等脚本操作 支持插入、删除、编辑操作 支持脚本在不同分辨率安卓终端上运行 支持脚本上传云端千款终端同时测试 WindowsXP及以上操作系统.运行畅通,挣脱环境束缚.保证系统兼容性. iTestin自动化测试工具特点:   1、全面的自动化测试   提供业界最全面的自动测试服务类型:兼容测试、性能测试、功能测试。真实记录测试过程,返回测试结果。测试结果包括:安装时长、启动时长,CPU占用、内存占用、界面截图、Log日志,Bug原因及分析等。   2、支持基于Android的应用、手游的复杂脚本录制   全球首款支持Android系统的自动化脚本工具,采用黑盒测试,为移动开发者提供基于批量终端的功能测试、脚本录制回放,及测试记录的功能。支持多功能点的应用、手游的脚本录制,支持长按、划屏、输入账号、密码等的深度遍历操作录制。   3、快速交付   支持记录在移动终端设备上记录操作行为;生成、编辑脚本文件;支持在本地设备上反复回放验证、运行,调试,并记录回放结果。iTestin还支持将录制好的脚本上传至Testin真机云测试平台,在大批量终端上进行功能测试验证。   4、标准化报告   Testin为开发者提供最专业、最详细的测试报告,采用黑盒测试忠实记录脚本在真机上的运行过程,自动生成屏幕截图和Log日志等,帮助开发者快速找到Bug原因。 iTestin自动化测试工具重点功能:   a、 连接和管理连接在PC上的终端设备,包括Phone和Pad。   b、支持在终端设备上记录操作行为、自动生成屏幕截图、Log日志等,并可生成相应脚本上传至iTestin平台。   c、支持在终端设备上记录操作行为、生成脚本文件。支持在终端设备上反复回放脚本进行本地验证并记录回放结果。自动导出错误屏幕截图和Log日志等。   d、支持在PC上上传录制的脚本文件和应用包到Testin平台,在Testin云测终端云的其他终端上按脚本执行应用程序做功能测试。 主要升级内容: 版本号:3.0.1-beta 1、编辑脚本时,右键菜单增加“修改”功能,用户可直接修改延时时长 2、客户端界面底部增加“查看更新信息”功能,可以查看最新更新信息 3、完善控件录制功能,修复某些应用引导界面无法正常识别控件的问题 4、完善控件录制功能,使客户端画面与终端实际画面保存同步 5、完善控件回放功能,使回放结果检查更准确 6、优化提交脚本界面和云测试界面分别增加loading提示
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值