有時候我們使用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 但是這種方式傳入單個引數的資料量有限...