今天給大家引入一種非入侵式UI的自動化測試方法,是想讓大家在寫手頭腳本的同時也能看到其他的玉石
針對做自動話測試的工程師來說,當拿到測試對象的時候,第一時間會去想這個系統/軟件有沒有一些built-in的測試方法。比如針對Android來說,我們根據android的發展歷史可以枚舉出很多
-
基于API的自動化測試
- 根據測試的功能模塊,會去調用一些sdk寫一些APP來測試這些功能是否工作。比如,針對Video的測試,會去寫個簡單的app (或者調用系統intent)來打開指定媒體文件;根據TCD的說明,設置參數。這樣的測試更多的比較適用于集成或者開發時候的測試,用于簡單的驗證功能的可用性。缺點是 無法模擬用戶的行為,會漏掉很多用戶場景。
-
基于UI的自動化測試
- 舉例來說,如果針對android,Google本身已經提供了很多測試方法。一路走來,Google提供了Monkey, Monkeyrunner, InstrumentationTest, Robotium(instrumentation test的變種,三方), uiautomator. 其中UI automator已經是功能非常強大的模擬人行為的自動化方法。筆者所在的部門從android出世就緊跟google的步伐頻繁更換各種測試工具(很折騰)。當測試針對跑起來的時候,有些時候是發現問題很難定位。比如Activity的instrumentation測試,它跑起來的時候和被測試app是在同一個進程中的,這本身是一種HOOK的機制,針對比較復雜的錯誤來說,往往不容易說清楚是app的問題還是腳本本身的問題。包括uiautomator, 因為這本身是一種入侵式的測試。
說這些是為了引入標題的意義,下面這個測試方法就是非入侵(non-intrustive),自動化的過程是真的模擬人的行為的。是芬蘭的一批人開發的,關鍵的技術是用攝像頭實時地拍出當前手機的畫面,然后用圖像識別技術來找出目標圖標,然后用機械手指去點擊,這是測試界的機器人了。
這里可以看到是這個測試裝置是如何工作的,很酷,好處在這里就不用文字多說了. Optofidelity
?
?
?
______但是______
- 太貴了,小公司很難有錢是買這個高級貨
- 當系統(APP) UI變化的時候,照樣會遇到script需要去更新維護的場景
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
