2017年8月31日 星期四

iOS 自動化測試教學 UI Testing

Xcode 有內建的 UITest 的功能
可以把你做的事情錄起來,轉成程式碼
在執行 UITest 的時候,你執行的是程式碼的部分,還是可以設斷點

實作如下:
1. 新增 iOS UI Testing Bundle
*要以新增 target 的方式新增,用新增 file 找不到 Bundle。
*也可以 File -> New -> Target...






創好之後會多一個資料夾


在 test navigator 中會有剛剛創的測試 bundle、預設 class 及預設 function
*可以自己另外寫測試 function,只要是 test 開頭的,Xcode 都知道是要做測試,測試時,會自動測試。test 開頭檔名舉例:testLogin...等。


2.撰寫測試 code
有兩種方式可以撰寫測試code,一種是直接打程式,另一種就是開頭提到的用錄的,Xcode會幫你轉成程式碼。
這裡示範用錄的。

把游標放在你要撰寫的地方,按下紅色錄影鍵( 🔴,在斷點旁邊):


*如果放在不能錄的地方,錄影鍵則不能按。


3.開始錄影


錄完後,回到 Xcode 就會看到剛才錄的,並轉成程式碼。


4.按下綠色打勾的地方的按鈕,還沒執行過會是灰色的 ▶,按下去就會執行。

// 遇到錯誤是否繼續執行
continueAfterFailure = false



從 Report navigator 可以看到專案中的每個 function testing 的覆蓋率。


開啟 Code Coverage 的方法如下:


按下 Close 就設定完成囉。


Tests 的表格裡可以看到每個階段執行的事情,按下眼睛可以看到當下的截圖。


2 則留言: