測試的目的是保證代碼的質量和發布時的信心,以加速開發和迭代的效率;但是如果測試本身太過于難寫復雜的話,反而會拖累開發速度。這大概也是 UI 測試所面臨的最大窘境 – 往往開發者在一個項目里寫了一兩個 UI 測試用例后,就會覺得難以維護,怯于巨大的時間成本,繼而放棄。
Apple 在 Xcode 7 中新加入了一套 UI Testing 的工具,其目的就是解決這個問題。新的 UI Testing 比以往的解決方案要簡單不少,特別是在創建測試用例的時候更集成了錄制的功能,這有希望讓 UI Testing 變得更為普及。
相比起其他一些 UI 測試框架,Xcode 的 UI Testing 最為誘人的優點在于可以直接錄制操作。
相比使用 UIAutomation 在 Instruments 中用 JavaScript 與 app 交互,我們現在可以用 Swift 或者 Objective-C 直接在 Xcode 里進行 UI 測試了,這使得測試時可以方便地進行和被調試。Xcode 7.0 中的 UI Testing 作為第一個版本,還有不少限制和 bug,使用起來也有不少“小技巧”,很多時候可能并沒有像單元測試那樣直接。但即便如此,使用 UI Testing 來作為人工檢查的替代和防止開發過程中 bug 引入還是很有意義的,相比起開發人員,也許 QA 人員從 UI 錄制方面收益更多。如果 QA 職位的員工可以掌握一些基本的 UI Testing 內容的話,應該可以極大地縮短他們的工作時間和壓力。而且相信 Apple 也會不斷改進和迭代 UI Testing,并以此驅動 app 質量的提升,所以盡早掌握這一技術還是十分必要的。
參考: