重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

Robotium之Android控件定位实践和建议(Appium/UIAutomator姊妹篇)

本人之前曾经撰文描述Appium和UIAutomator框架是如何定位Android界面上的控件的。

成都创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站制作、成都网站设计、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的凉城网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

  • UIAutomator定位Android控件的方法实践和建议
  • Appium基于安卓的各种FindElement的控件定位方法实践和建议
今天我们换一个渊源更留长,当今更盛行的框架Robotium,实践下看它又是如何对控件进行定位的。

1. 背景

为保持这个系列的一致性,我们继续用SDK自带的NotePad实例应用作为我们的试验目标应用,但是这次不仅仅是像以前一样主要围绕Menu Option里面的那个"Add note”控件进行定位,而是会设计到NotePad上的多个不同的控件定位。但主要围绕的还是Notepad的NotesList这个Launchable activity了,下面先看下UIAutomatorViewer下面捕获的我们会涉及到的不同界面吧。
  • NotesList Activity的第一个页面列表中会包含note3note9的笔记

6.2.2 解析

注意这里的类名viewClass和UIAutomator(New UiSelector().className(String className))以及Appium(AppiumDriver.findElementByClassName(String className))的通过className查找时填写的类的格式和类型是不一样的,就以TextView为例:
  • Robotium :Class类型 || 不需要FQCN(也就是不需要写成andoid.widget.Textview,这在UIAutomator和Appium中是必须的)
  • UIAutomator: String类型 || FQCN
  • Appium :String类型 || FQCN

7 无需定位的控件

我们常用到的两个系统控件是不需要定位的,一个是系统的Menu键,一个是系统的goBack。但是注意Menu下面的Menu Entry还是需要定位的,比如我们例子中的”Add note“这个Menu Entry。

8 还有吗?

以上列出了Robotium中对本人当前最重要的获取控件的方法,当然Solo里面还有一些其他的方法,但不是容易理解就是现在用不上,所以就不一一陈述了
  • 通过坐标点操作控件:容易理解,就是获得坐标点然后点击屏幕坐标。
  • 获取和操作WebView控件:现在用不上,到时有用到了再去深究
  • 还有其他吗?


 

作者

自主博客

微信

CSDN

天地会珠海分舵

http://techgogogo.com


服务号:TechGoGoGo

扫描码:

Robotium之Android控件定位实践和建议(Appium/UIAutomator姊妹篇)

http://cqcxhl.com/article/piieji.html