python+appium自動(dòng)化測(cè)試-滑動(dòng)
一、scroll()方法
Appium 中webdriver提供scroll()方法來(lái)滾動(dòng)頁(yè)面,該方法只適用于屏幕上已經(jīng)顯示的兩個(gè)元素,從一個(gè)元素滾動(dòng)到另一個(gè)元素。若元素不存在當(dāng)前屏幕或被遮擋,則無(wú)法使用該方法。
方法介紹:
scroll(self, start_el, stop_el, duration=None):
參數(shù):
- start_el- 開(kāi)始要滾動(dòng)的元素
- stop_el- 要滾動(dòng)到的元素
- 即從元素stop_el滾動(dòng)至元素start_el
- duration 即滾動(dòng)的持續(xù)時(shí)間
具體代碼如下
def scroll():
stop_el = self.driver.find_element_by_xpath("http://android.widget.TextView[@text='2008']")
start_el = self.driver.find_element_by_xpath("http://android.widget.TextView[@text='2012']")
self.driver.scroll(start_el, stop_el)
二、UiScrollable()方法
UiScrollable是UiCollection的子類,專門處理滾動(dòng)時(shí)間,提供各種滾動(dòng)方法,下面只介紹了滾動(dòng)到固定的對(duì)象。
相關(guān)概念:
步長(zhǎng):從一點(diǎn)到另一點(diǎn)使用的時(shí)間。步長(zhǎng)越短滾動(dòng)越快,反之步長(zhǎng)越長(zhǎng)滾動(dòng)越慢。
掃動(dòng)次數(shù):觸發(fā)滾動(dòng)的次數(shù)。
上栗子:使用上一個(gè)方法scroll()的栗子圖片,實(shí)現(xiàn)從“2008”滑動(dòng)到“2012”。
def test():
self.driver.find_element_by_android_uiautomator(
'new UiScrollable(new UiSelector().scrollable(true)).scrollIntoView(new UiSelector().text("2012")).scrollToEnd(10,5)')
# text("2012"):表示需要滑動(dòng)的位置
# scrollToEnd(10,5):以步長(zhǎng)(速率)5滾動(dòng)到列表底部,最多滾動(dòng)10次。
注意:該方法會(huì)直接滑動(dòng)到列表最底部或最頂部,在中間時(shí)比較不好判斷,如果列表的數(shù)據(jù)比較長(zhǎng)的話,建議不使用哦。評(píng)論區(qū)有沒(méi)有哪位大神,有好的方法來(lái)解決這個(gè)局限性,感謝!!
三、swipe()方法
使用循環(huán)實(shí)現(xiàn),具體實(shí)現(xiàn)方法為:
寫(xiě)一個(gè)循環(huán),循環(huán)中再做判斷
若查找到元素,則執(zhí)行點(diǎn)擊
若未查找到元素,則做上滑操作,向上滑動(dòng)列表
若向上滑到列表最底部仍然未查找到數(shù)據(jù),則判斷當(dāng)前是否處于列表最底部
當(dāng)前處于列表最底部,則做下滑操作,向下滑動(dòng)列表
注意:scroll() 與swipe()的區(qū)別,swipe是可以根據(jù)自己需要設(shè)置滑動(dòng)的距離,而scroll是根據(jù)頁(yè)面中兩個(gè)元素位置距離進(jìn)行滑動(dòng)。
- 相關(guān)閱讀
- AJAX彈出提示信息效果與lightbox效果一樣
- 購(gòu)買系統(tǒng)可以免費(fèi)提供修改服務(wù)嗎?
- 昆山假日旅行社
- 在table中tr的display:block在firefox下顯示布局錯(cuò)亂問(wèn)題
- 如何購(gòu)買深山旅行社管理系統(tǒng)?
- Javascript JS 限制復(fù)選框的選擇個(gè)數(shù)(3)
- 吉林省文化國(guó)際旅行社
- ASP.NET常用的三十三種實(shí)用代碼(下)
- 共有0條關(guān)于《python+appium自動(dòng)化測(cè)試-滑動(dòng)》的評(píng)論
- 發(fā)表評(píng)論
您發(fā)布的評(píng)論即表示同意遵守以下條款:
一、不得利用本站危害國(guó)家安全、泄露國(guó)家秘密,不得侵犯國(guó)家、社會(huì)、集體和公民的合法權(quán)益;
二、不得發(fā)布國(guó)家法律、法規(guī)明令禁止的內(nèi)容;互相尊重,對(duì)自己在本站的言論和行為負(fù)責(zé);
三、本站對(duì)您所發(fā)布內(nèi)容擁有處置權(quán)。
- 更多信息>>欄目類別選擇
- 百度小程序開(kāi)發(fā)
- 微信小程序開(kāi)發(fā)
- 微信公眾號(hào)開(kāi)發(fā)
- uni-app
- asp函數(shù)庫(kù)
- ASP
- DIV+CSS
- HTML
- python
- 更多>>同類信息
- Android移動(dòng)端自動(dòng)化測(cè)試:使用UIAutomatorViewer與Selenium定位元素
- python通過(guò)代碼修改pip下載源讓下載庫(kù)飛起
- python里面requests.post返回的res.text還有其它的嗎
- windows7環(huán)境下安裝配置jdk
- python對(duì)微信操作要用到這兩個(gè)庫(kù)wxpy與itchat
- 8種Python字符串拼接的方法,你知道幾種
- 更多>>最新添加文章
- dw里面查找替換使用正則刪除sqlserver里面的CONSTRAINT
- Android移動(dòng)端自動(dòng)化測(cè)試:使用UIAutomatorViewer與Selenium定位元素
- 抖音直播音掛載小雪花 懂車帝小程序
- javascript獲取瀏覽器指紋可以用來(lái)做投票
- 火狐Mozilla Firefox出現(xiàn):無(wú)法載入您的Firefox配置文件 它可能已經(jīng)丟失 或是無(wú)法訪問(wèn) 問(wèn)題解決集合處理辦法
- 在Android、iOS、Windows、MacOS中微信小程序的文件存放路徑
- python通過(guò)代碼修改pip下載源讓下載庫(kù)飛起
- python里面requests.post返回的res.text還有其它的嗎
- 更多>>隨機(jī)抽取信息
- 詳解VBScript里的對(duì)象 正則表達(dá)式功能介紹
- JavaScript技巧:讓網(wǎng)頁(yè)自動(dòng)穿上外套
- js中innerHTML,innerText,outerHTML的用法與區(qū)別
- 旅行社手機(jī)網(wǎng)站模板1
- Dreamweaver錯(cuò)誤:在onload運(yùn)行_beforeSave.htm時(shí),發(fā)生了一個(gè)JavaScript錯(cuò)誤
- 旅行社網(wǎng)站模板3