天天看點

【搜狗測試】iOS自動化測試之UIAutomation

【搜狗測試】iOS自動化測試之UIAutomation

UIAutomation不但提供支援腳本編寫方式的自動化測試,還支援錄制回放方式的自動化測試,是一個功能強大的自動化測試工具。

接下來就通過一個搜狗輸入法iOS版執行個體來了解一下如何使用該工具:

如果想對目前的代碼打包後進行自動化測試,可在XCode中按下快捷鍵“Command + i”即可。但如果被測應用已經裝到了手機上,那麼可以通過XCode -- Open Developer Tools,選擇Instruments。這兩種方法都可以進入下圖這個界面。

【搜狗測試】iOS自動化測試之UIAutomation

點選Automation圖示,點選選擇之後,就打開了Automation這個工具。

【搜狗測試】iOS自動化測試之UIAutomation

界面裡面比較常用的功能都在圖檔上做了介紹,接下來我們用實際的例子來講述一下編寫腳本。

【搜狗測試】iOS自動化測試之UIAutomation

UIAutomation的功能測試代碼是用Javascript編寫的。UIAutomation和Accessibility有着直接的關系,你将用到通過标簽和值的通路性來獲得UI元素,同時完成相應的互動操作。

這段腳本實作的功能就是進入搜狗輸入法設定程式,下載下傳“英雄聯盟”細胞詞庫的一個過程。首先第一行代碼是獲得目前的target,第二行擷取目前測試的應用的分頁欄,在分頁欄找到詞庫這個按鈕,通過tap函數發送點選事件,這樣就會進入詞庫的界面。第三行代碼通過主視圖的tableView,找到包含“細胞詞庫”的tableViewCell,發送一個按下時長為0.8秒的長按事件。第四行代碼同理,找到“英雄聯盟”的tableViewCell,并點選偏移量為x:0.92,y:0.52的位置,這裡偏移量是針對該視圖(tableViewCell)的左上角為頂點,計算出的百分比。而這段代碼中這個百分比,相當于點選下圖的“下載下傳”按鈕。最後一行代碼,是點選目前螢幕上坐标值為40,40的點。

【搜狗測試】iOS自動化測試之UIAutomation

以上的例子是比較簡單的實作了下載下傳“英雄聯盟”細胞詞庫的流程,裡面用到了點選的一系列函數,包括普通的點選,還有帶參的點選。當然還有很多功能很強大的函數,可以檢視蘋果的官方文檔。

以上就是通過一個簡單的例子,介紹了一些UIAutomation的功能,如果你還想了解UIAutomation或是更多自動化測試經驗分享,請掃描下方二維碼關注“搜狗測試”微信公衆号

【搜狗測試】iOS自動化測試之UIAutomation
【搜狗測試】iOS自動化測試之UIAutomation

原文連結

如需轉載該篇文章,請注明來自“搜狗測試”

繼續閱讀