cmd命令行中logcat输出日志中文乱码

在命令行使用adb logcat命令直接输出日志中文内容显示乱码,原因是中文系统中cmd命令行窗口默认的编码是GBK,而LogCat打印的日志是UTF-8编码,所以adb logcat命令输出的中文内容显示乱码。

修改cmd命令行窗口字符编码即可解决logcat日志中文显示乱码问题:

1.cmd命令行窗口字符编码切换为UTF-8,命令行中执行:chcp 65001

Continue reading »

logcat日志级别

logcat输出的Android日志包含以下级别: V — Verbose (lowest priority) D — Debug I — Info W — Warning E — Error F — Fatal S — Silent (highest priority, on which nothing is ever printed) 例如,显示优先级为warning或更高级别的日志信息 ad

Continue reading »

MonkeyRunner读取本机图片进行对比loadImageFromFile

上一篇文章介绍了使用monkeyrunner截取指定区域的图像并进行对比,日常使用中大多数时候需要读取本机的图片和monkeyrunner的截图进行对比。

MonkeyRunner.loadImageFromFile(‘./shot.png’)方法可以实现读取本地图片供MonkeyRunner使用的功能,参数是本地图片路径。需要特别注意loadImageFromFile的大小写,否则会出现AttributeError的提示。

Continue reading »

monkeyrunner对比屏幕局部图像.getSubImage()

monkeyrunner执行测试时使用.takeSnapshot()截图,默认截取整个屏幕,包含了系统的状态栏。真实手机状态栏中包含如电量/信号量/消息提示等变量,使用.sameAs()对比整个屏幕的截图时就很容易出现错误。而使用.getSubImage()获得局部图像,然后再进行对比,就减少了monkeyrunner执行结果出错的概率。
monkeyrunner使用getSubImage()获取截图局部图像,示例如下:

Continue reading »

MonkeyRunner连接指定设备

MonkeyRunner支持多设备控制,电脑连接多个设备或开启多个Android模拟器时,MonkeyRunner连接并操纵指定设备的方法如下:

首先命令行中运行adb devices 查看可连接的设备列表

device=MonkeyRunner.waitForConnection(6,’emulator-5554′)
参数1:超时时间,单位秒,浮点数,默认是无限期地等待。

Continue reading »