Android 自动化测试学习笔记

  由于工作需要,开始研究android的自动化测试,多年不曾触摸代码的我,需要重新拾起了。

  研究了一个星期,现在刚刚明白一点monkeyrunner的操作原理,蚂蚁移山,我要一点一点的啃了。

  今天先记下monkey runner怎样连接机子,及其在读取设备信息时遇到的问题以及解决方法。

  任务:连接设备,读取设备中所需的信息

  问题一:package的引用

  其他应用包需在MonkeyDevice,MonkeyRunner之前引用,否则不能引用成功

  问题二:LookupError: unknown encoding gbk,由于monkeyrunner是调用JPython来运行的,而JPython与系统默认的编码方式有冲突,这种冲突

是对于我这种中文操作系统的电脑来说真是一个头疼的问题。解决中。。。。。

  经过一下午的尝试,终于搞定了,不过却是修改了一下Tools下monkeyrunner.bat,将最后一行添加了点内容,变成

  call %java_exe% -Xmx512m -Djava.ext.dirs=%frameworkdir%;%swt_path% -Dcom.android.monkeyrunner.bindir=..\framework -Dfile.encoding=UTF-8 -jar %jarpath% %*

  

  问题解决了,然后就是写脚本了,一个简单的脚本,获取一些基本的信息。

#get the device's information

#imports the monkeyrunner modules used by this program

import os

from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice

#Connects to the current device

device = MonkeyRunner.waitForConnection()

print 'connect device successfully!!!!'

#get the device's information

sdk = device.getProperty('build.version.sdk')

user=device.getProperty('build.user')

codename = device.getProperty('build.version.codename')

id=device.getProperty('build.id')

print sdk print user,codename,id

 

最后运行的结果为

connect device successfully!!!
10
se.infra REL GINGERBREAD

 

另,因为这个问题,查了很多资料,虽然最后没什么用,但是有些信息相信以后可能用到,先保存着
chcp 命令, chcp 65001 就是换成UTF-8代码页 chcp 936 可以换回默认的GBK chcp 437 是美国英语

 

  

转载于:https://www.cnblogs.com/happyfire/archive/2012/09/07/2675197.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值