网站大量收购独家精品文档,联系QQ:2885784924

如何使用及进行交互.docxVIP

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
如何使用monkeyrunner与view进行交互上一篇?/?下一篇??2013-07-01 15:22:14 / 个人分类:Monkeyrunner查看( 270 )?/?评论( 0 )?/?评分(?0?/?0?)android官方里的monkeyrunner只介绍了一些有限的ui测试方法. 比如只能指定坐标点模拟操作行为,?测试结果对比只能通过截图进行简单对比结果. 当然我们可以聪明的来实现猜测到view视图的坐标点,那么我们就可以像robotium一样, 在monkeyrunner脚本中,对控件级的view视图进行交互操作.如何实现捕捉到当前activity展现的所有的控件信息呢?monkeyrunner.jar 里目前有EasyMonkeyDevice.class 和 By.class , 提供了一些新的api, 很大的满足了一些高级需求.有几个blog文章对EasyMonkeyDevice类的api进行了一些示例, 非常浅显易懂.yan1391的博客  Android 测试之初试 Monkeyrunner。国外的 diego也写了一系列关于monkeyrunner 的文章,并自己写了一些viewclient apis 可以下载到 ,非常不错.请大家参考,但是diego 把博客写道了blogspot上, 哈,所以大陆的朋友们就郁闷了.只能翻墙看了.其实以上所有文章主要通过使用了By , EasyMonkeyDevice , monkeydevice 这3个类来实现与view object的交互. 那我们就对这3个类进行简单的剖析一下.访问这里 可以看到EasyMonkeyDevice和By的源码(在线浏览). 1.  By.class 可以根据id获得viewobject . 例如我们有一个text view 的id是 id/account 那么我们就可以通过如下获得该view object.account = By.id(‘id/account’)2. EasyMonkeyDevice.class获得view object后,可以用EasyMonkeyDevice类进行一些操作. getText() , touch(), type(). 分别为获得该view object 的文本值, 进行触摸屏操作(其会获取view object的坐标值,并进行操作). type() 则会先touch, 然后输入字符.3. monkeyDevice 在线浏览源码# 通过MonkeyDevice获取HierarchyViewer对象实例hierarchy_viewer = device.getHierarchyViewer()#通过HierarchyViewer获取ViewNode实例(一个viewnode实例代表一个控件)view_node = hierarchy_viewer.findView(By.id(‘id/emptyText’))#获取控件内的文本text = view_dProperties.get(‘mText’).toString()if text.find(‘have any’) 0:print ‘not find have any!’else:print ‘find have any!’print text 总结: 如此这般,我们用monkeyrunner 也可以写出和robotium一样的脚本,可以对view object 进行操作. 而且可以和坐标点值的方法进行融合. 可以由很大的突破.另发现了一些问题,目前怀疑是android monkeyrunner.jar 的bug. 问题是EasyMonkeyDevice的touch()函数,不能对应用程序弹出的对话框正确的定位坐标值. 当一个应用程序弹一个对话框时(确认还是取消之类的对话框),当根据id touch确定和取消时, 定位的坐标点错误,导致无法实现想要的功能.还未具体分析时什么时候对话框会产生能该问题. 为什么说可能是bug, 是因为用tools里的HierarchyViewer 进行察看时,发现该对话框的实际坐标显示位置有问题. 但渲染到手机屏幕确是正常的. 这导致, 通过hierachy获得的坐标值有问题,点击操作无法触发对应的button view. Monkeyrunner?API帮助文档?(2013-04-11 17:01:05)转载▼标签:?it分类:?MonkeyrunnerMonkeyrunner?API帮助文档?文档下载地址?/s/xcHlw/1365674074?内容为MonkeyRunner帮助??1、com.android.monkeyrunner.MonkeyRunner.alert???当前脚本的运行过程中显示警告对话框。对

文档评论(0)

wuyoujun92 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档