MonkeyRunner演示示例—精通移动App测试实战(5)

发表于:2016-4-07 09:37

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:于涌 王磊 曹向志    来源:51Testing软件测试网原创

  5.3 MonkeyRunner演示示例
  5.3.1 第一个MonkeyRunner示例(针对游戏)
  为了能够让大家对MonkeyRunner这个工具有一个感性认识,下面我们一起来看一下其目前非常火爆的一款动作类的手机游戏-"全民奇迹"进行测试的示例,如图5-5所示。
  
  以下为对应的MonkeyRunner的脚本信息。
  from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice
  device = MonkeyRunner.waitForConnection()
  device.installPackage('D:\samples\com.tianmashikong.qmqj.huawei.1508231107.apk')
  device.startActivity(component='com.tianmashikong.qmqj.huawei/
  .UnityPlayerNativeActivity')
  result = device.takeSnapShot
  result.writeToFile('game.png','png')
  上面这段脚本实现了安装"全民奇迹"游戏,启动"全民奇迹"游戏,而后进行截屏并把截屏信息保存到"game.png"文件的操作。
  同时,MonkeyRunner也提供了另一种脚本录制方式,使读者朋友能够更加方便的、在不编写代码的情况下,就完成脚本的开发工作,也就是利用"monkey_recorder.py"进行操作步骤的录制工作。关于如何利用"monkey_recorder.py"进行脚本的录制和脚本的回放,我们将在5.3.2小节向大家进行详细讲解。
  5.3.2  如何利用monkey_recorder.py进行脚本录制
  大家可以从作者的博客下载相关的脚本文件,地址为"http://www.cnblogs.com/tester2test/ p/4420056.html",如图5-6所示。
  
  下载后的文件为一个名叫"monkeyrunner_py脚本.rar"的文件,为了大家应用方便,建议大家将这个压缩文件的内容统一解压到Android SDK的"tools"文件夹下,解压后其信息如图5-7所示。
  
  如图5-7所示,在Android SDK文件夹下多了红色方框所示的这些文件,其中"monkey_ recorder.py"就是录制手机操作的python脚本。大家可以通过在命令行控制台输入"monkeyrunner monkey_recorder.py"来调用它,如图5-8所示。
  
  在调用monkey_recorder.py之前,大家需要将要调试的手机设备,连接到电脑,并保证其相关的驱动正确安装,可以利用"adb devices"命令查看到其信息,如图5-9所示。
 
  从图5-9中我们可以看到,有一个手机设备已正确的连接,运行"monkeyrunner monkey_ recorder.py"以后,将出现图5-10所示界面信息。
  我们可以从MonkeyRecorder的主界面上看到其主要分成了3个区域,上面是其支持的一些功能,主体左侧显示手机的屏幕信息,右侧则为对应的脚本代码信息。这里我们仍然以登陆"全民奇迹"游戏为例,向大家讲解其操作过程。首先我们需要滑屏以使手机解锁,那么就需要单击"fling",在弹出的"Input"对话框中选择"SOUTH"(也就是向下滑屏),拖曳时长和步长,我们选择默认值不变,而后单击"确定"按钮,如图5-11所示。
  
本文选自《精通移动App测试实战:技术、工具和案例》第五章,本站经人民邮电出版社和作者的授权。
版权声明:51Testing软件测试网获人民邮电出版社和作者授权连载本书部分章节。
任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。
21/212>
《2023软件测试行业现状调查报告》独家发布~

精彩评论

  • liujh1211
    2016-5-03 16:43:02

    学习了不错不错,就是不知道那个坐标值要怎么得来哦

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号