robotium获取android页面元素的逻辑

先来看看android中页面元素的继承关系

View

android.view.View

这个类表示用户界面组件的基本构建块。一个View占据屏幕上的一个矩形区域,并负责绘图和事件处理。
View是widgets的基类,widgets用于创建交互式UI组件(按钮,文本框等)。 
ViewGroup子类是layouts的基类,layouts是不可见的容器包含其他Views(或其他的ViewGroup),并定义它们的布局属性。

 

WebView

java.lang.Object
   ↳ android.view.View

   ↳ android.view.ViewGroup


   ↳ android.widget.AbsoluteLayout



   ↳ android.webkit.WebView

显示网页的View。这个类是你在你的Activity中,运行自己的网页浏览器或简单地显示一些网上的内容的基础。它使用了WebKit渲染引擎来显示网页,方法包括:历史的前进和后退导航,放大和缩小,执行文本搜索和更多。

请注意,为了使你的Activity能访问Internet,在WebView中加载网页,你必须添加Internet权限到你的Android Manifest文件:

<uses-permissionandroid:name="android.permission.INTERNET"/>

必须是element.的子节点

 

java.lang.Object
   ↳ android.view.View

   ↳

android.widget.TextView

 

 

再通过走读robotium的源码,我们可以知道robotium获取android元素的顺序:

Robotium做自动化测试主要是使用class Solo中的方法,获取元素的顺序,根据类的继承关系依次为:View ->具体元素,如TextView、ImageButton等

 

获取具体页面元素,通过Getter类中的getter.getView方法组,根据传递参数不同,调用的方法不一样,如果你传int id,那就通过activity.findViewById(id);方法

如果是String id,使用targetContext.getResources().getIdentifier(id, "id", "android")方法获得viewId,再通过getView(viewId, index)

public ImageButton getImageButton(int index)
 {
  return (ImageButton)getter.getView(android/widget/ImageButton, index);
 }

 转载地址:http://www.cnblogs.com/zhitang2009/p/3425106.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值