UiAutomator 點選難以識別的控制項技巧

2021-07-11 21:34:32 字數 1030 閱讀 4447

有時候我們使用uiautomator在查詢元素的時候,發現明明元素在uiautomator view工具中能夠識別出,但是使用**去識別的時候,卻發現該元素 uiobjectnotfoundexception,是偶然出現的,但是這些就夠讓我們的測試**的容錯性大大降低,給別人展示的時候,人家看到的是結果,發現時不時的出現錯誤,那就給人的影響是————你還沒做好。

其實有些元素真的出現該現象的話,我們不妨用另外乙個角度去思考——座標,讓我們來舉個栗子:

圖二:【全屏按鈕】元素(uiautomatorview 觀察)

下面是我的寫的例子:

uiobject controllerviewlayout = device.findobject(new uiselector().resourceid(pakage_name+"layout_controller_bottom"));

uiobject videoview = device.findobject(new uiselector().resourceid(pakage_name+"kankan_video_view"));

if (!controllerviewlayout.exists())

uiobject fullscreenbtn =device.findobject(new uiselector().resourceid(pakage_name + "iv_video_fullscreen_layout"));

if (!fullscreenbtn.exists())else

執行後,發現這個問題完全解決啦。

主要是用到 rect 這個類,大家可以去了解一下這個類,會發現對我們測試在定位座標的時候還是挺有用的,謝謝觀閱!

Uiautomator讀取properties檔案

1.建立assets資料夾 工程上右鍵new folder assets folder 2.在assets資料夾中建立prop檔案 在assets資料夾中右鍵new file,輸入名稱 prop 3.在prop檔案中新增引數,格式為 key value 如 time 100 name qq 4.封裝...

uiautomator 環境搭建

1 安裝uiautomator2 pip install pre uiautomator2 pip install pillow 2 初始化,部署相關的守護程序 裝置上會安裝uiautomator test.apk python m uiautomator2 init3 連線手機 1 wifi連線,...

uiautomator傳入引數長度

最近在做乙個關鍵字的框架,需要利用如下方式傳入引數執行 adb shell uiautomator runtest t jar e runtype wowowowowo e runtype2 432432432 c com.uiauto.alarmtest rp 但是這種方式傳入單個引數的資料量有限...