讓我給你講講 iOS 自動化測試的那些干貨(2)
發表于:2017-03-10來源:csdn作者:LeoMobileDeveloper點擊數:
標簽:iOS
其實不管是開發還是測試,如果你在不斷的做重復性工作的時候,就應該問自己一個問題:是不是有更高效的辦法? 自動化測試有很多優點: 測試速度快
其實不管是開發還是測試,如果你在不斷的做重復性工作的時候,就應該問自己一個問題:是不是有更高效的辦法?
自動化測試有很多優點:
-
測試速度快,避免重復性的工作
-
避免regression,讓開發更有信心去修改和重構代碼(個人認為最大的優點)
-
具有一致性。
-
有了自動化測試,持續集成(CI)會變得更可靠。
-
迫使開發人員寫出更高質量的代碼。(自動化測試不通過,代碼不允許合并)
當然,自動化測試也有一些缺點。
-
開發和維護成本高。
-
不能完全替代人工測試。
-
無法完全保證測試的準確性 - 讓代碼去判斷一段邏輯是否正確很容易,但是,讓代碼判斷一個控件顯示是否正確卻沒那么容易。
所以,在做自動化測試之前,首先要問自己幾個問題?
-
這個測試業務的變動是否頻繁?
-
這個測試業務是否屬于核心功能?
-
編寫測試代碼的成本有多少?
-
自動化測試能保證測試結果的準確么?
通常,我們會選擇那些業務穩定,需要頻繁測試的部分來編寫自動化測試腳本,其余的采用人工測試,人工測試仍然是iOS App開發中不可缺少的一部分。
測試種類
從是否接觸源代碼的角度來分類:測試分為黑盒和白盒(灰盒就是黑盒白盒結合,這里不做討論)。
白盒測試的時候,測試人員是可以直接接觸待測試App的源代碼的。白盒測試更多的是單元測試,測試人員針對各個單元進行各種可能的輸入分析,然后測試其輸出。白盒測試的測試代碼通常由iOS開發編寫。
黑盒測試。黑盒測試的時候,測試人員不需要接觸源代碼。是從App層面對其行為以及UI的正確性進行驗證,黑盒測試由iOS測試完成。
從業務的層次上來說,測試金字塔如圖:
原文轉自:http://blog.csdn.net/hello_hwc/article/details/60957515