新聞中心
這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
Robotium之Android控件定位實(shí)踐和建議(Appium/UIAutomator姊妹篇)
本人之前曾經(jīng)撰文描述Appium和UIAutomator框架是如何定位Android界面上的控件的。
成都創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的涼城網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
- UIAutomator定位Android控件的方法實(shí)踐和建議
- Appium基于安卓的各種FindElement的控件定位方法實(shí)踐和建議
今天我們換一個(gè)淵源更留長(zhǎng),當(dāng)今更盛行的框架Robotium,實(shí)踐下看它又是如何對(duì)控件進(jìn)行定位的。
1. 背景
為保持這個(gè)系列的一致性,我們繼續(xù)用SDK自帶的NotePad實(shí)例應(yīng)用作為我們的試驗(yàn)?zāi)繕?biāo)應(yīng)用,但是這次不僅僅是像以前一樣主要圍繞Menu Option里面的那個(gè)"Add note”控件進(jìn)行定位,而是會(huì)設(shè)計(jì)到NotePad上的多個(gè)不同的控件定位。但主要圍繞的還是Notepad的NotesList這個(gè)Launchable activity了,下面先看下UIAutomatorViewer下面捕獲的我們會(huì)涉及到的不同界面吧。
- NotesList Activity的第一個(gè)頁(yè)面列表中會(huì)包含note3到note9的筆記
6.2.2 解析
注意這里的類名viewClass和UIAutomator(New UiSelector().className(String className))以及Appium(AppiumDriver.findElementByClassName(String className))的通過(guò)className查找時(shí)填寫的類的格式和類型是不一樣的,就以TextView為例:
- Robotium :Class類型 || 不需要FQCN(也就是不需要寫成andoid.widget.Textview,這在UIAutomator和Appium中是必須的)
- UIAutomator: String類型 || FQCN
- Appium :String類型 || FQCN
7 無(wú)需定位的控件
我們常用到的兩個(gè)系統(tǒng)控件是不需要定位的,一個(gè)是系統(tǒng)的Menu鍵,一個(gè)是系統(tǒng)的goBack。但是注意Menu下面的Menu Entry還是需要定位的,比如我們例子中的”Add note“這個(gè)Menu Entry。
8 還有嗎?
以上列出了Robotium中對(duì)本人當(dāng)前最重要的獲取控件的方法,當(dāng)然Solo里面還有一些其他的方法,但不是容易理解就是現(xiàn)在用不上,所以就不一一陳述了
- 通過(guò)坐標(biāo)點(diǎn)操作控件:容易理解,就是獲得坐標(biāo)點(diǎn)然后點(diǎn)擊屏幕坐標(biāo)。
- 獲取和操作WebView控件:現(xiàn)在用不上,到時(shí)有用到了再去深究
- 還有其他嗎?
作者 | 自主博客 | 微信 | CSDN |
天地會(huì)珠海分舵 | http://techgogogo.com | 服務(wù)號(hào):TechGoGoGo 掃描碼: | http://www.dlmjj.cn/article/piieji.html |