robotframework,移動端(小程序)自動化,滾動屏幕的方法


場景描述:

  小程序端定位元素有無法定位彈出層內容的問題(自動化工具只能識別到背景主層,無法識別到彈出層)

 

  解決思路:

1、彈出層元素與背景主層元素位置一致,當點擊出彈出層時,在定位背景主層即可定位到彈出層元素

 

 

 

如上,彈層紅色箭頭指向“紅色”規格按鈕,常規定位方法是無法點擊到的。該按鈕坐標背景層對應元素為“¥500.00”,則先點開彈出層,在定位“¥500.00”即可實現對“紅色”的點擊

 

問題的關鍵在於,“紅色”的坐標與“¥500.00”並不會完全一致,遇到對應的坐標無其他元素的情況,則需要滑動屏幕,使“¥500.00”位置剛好與“紅色”一致。

 

Robotframework提供“Swipe”指令來操縱屏幕滑動。

 

首先要了解屏幕坐標信息

 

 

 

上圖為手機屏幕坐標XY軸圖,最左上角是0點,X向右,Y向下延伸

 

我們通過uiautomatorviewer定位到元素會查看到一個坐標值

 

 

 

如上圖“小程序自動化店鋪”元素定位后,查看坐標值如下

 

 

 

兩個括號里對應的是兩個點,左邊括號對應的是左上角的點,右邊對應的是右下角點,通過兩個點來實現整個區域的定位

 

滾動的步驟:

原理:首先獲取滾動前元素坐標,滾動后,再獲取原元素坐標。

Robotframework的書寫方法為

Swipe 21 900 21 698 duration=2000

 

 

 

[21,900]對應滾動前的坐標[21,689]對應滾動后的坐標  duration=2000 表示滾動預定延時2000ms

 

如此,即顯示了屏幕畫面的滾動操作。進而實現坐標值對應,完成后續點擊操作

 

特別注意,彈出層的元素定位一定是通過定位背景層元素實現的,所以彈出層通過元素內容定位的方式是無效的,得着到背景層內容


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM