UI 自動化測試相關內容:
概念介紹
自動化測試最初由麥克科恩 (Mike Cohn) (敏捷開發的創始人之一)
在他的著作《Succeeding with Agile》一書中提出了測試金字塔這個概念。
從上圖可以看出,整個金字塔模型由三層組成:
- 單元測試(Unit Tests)
- 服務測試(Service Tests)
- UI測試(UI Tests)
1.UI自動化測試概念:我們先明確什麼是UI
UI,即(User Interface簡稱UI用戶界面)是系統和用戶之間進行交互和信息交換的媒介 UI自動化測試:
Web自動化測試和移動自動化測試都屬於UI自動化測試,UI自動化測試就是藉助自動化工具對程序UI層進行自動化的測試
2.爲什麼對UI採用自動化測試?
從不同的階段或層次來說,自動化測試可以分爲單元測試、接口測試、UI測試。如果一個產品從沒有做單元測試或接口測試,只做u房的自動化測試是不科學的,很難從本質保證產品的質量
如果妄圖實現全面的UI層的自動化測試更是勞民傷財,投入了大量人力時間結果卻不盡人意,因爲越往上層,用例維護成本越高,尤其是UI層的元素經常改變的產品。
但不管什麼樣的產品,最終呈現給用戶的是UI層測試人員必須在UI層投入大量的精九。所以。我們有必要通過自動化的方式幫助我們"部分解放"重複的勞動,在解放勞動力和維護成本之間找到一個平衡,自動化測試就會成爲我們的一個利器。
3.什麼項目適合做UI自動化測試?
- 需求穩定,不會頻繁變更
- UI界面穩定,變動少
- 項目週期長
- 大量的迴歸測試
4.UI自動化測試介入時機
項目需要在功能測試完畢後
5.UI自動化測試所屬分類
1.黑盒測試(功能測試)
2.白盒測試(單元測試)
3.灰盒測試(接口測試)
注意:UI自動化測試屬於黑盒測試(功能測試)
6.UI 測試建議
爲了保持測試金字塔測形狀,一個快速、可維護、覆蓋範圍合理的測試組合應該是這樣的:
- 大量小而快的單元測試
- 全面的接口測試
- 少量的UI測試
都說業內最佳實踐看Google,Google的自動化測試分層比例是: - 單元測試(70%)
- 接口測試(20%)
- UI測試(10%)