就是將繁瑣的手動驗證,透過程式碼的方式,自動執行驗證,產生驗證的報表,就可以對測試結果更一目瞭然。
目標是希望【減少】人工驗證所耗費的時間,將時間放在更重要更有價值的測試或流程。
註:為什麼使用【減少】這個詞?
因為人工驗證還是必須存在的,在部分的測試種類或情境中,也是很重要的。
Code never lies, comments sometimes do.
來自 Ron Jeffries 程式大師名言
你的寫 code 不會騙人,不管如何,它都會乖乖地執行。
(comments sometimes do 此部分暫時不講,有興趣的人可以再自行搜索一下)
因為人工驗證,是有可能會有誤差的,那 code 的方式就會幫你測好測滿
(前提是你寫的 code 要正確喔XDD)
但是,不代表 自動化 = 省時間
? 釐清時間
- 省時間 → QA 所有工作的總時間。
- 【減少】人工驗證時間 → 顧名思義,就只是減少人工驗證的時間,轉而投注在其他測試或專案上。
兩者還是有差異的的喔!
所以既然是 自動化的 code,就意味著須要 維護/更新/優化,那這些的時間也是相到耗時的
但如果有寫好寫完成,那成效必然是比手動的驗證結果效益來的更大的
(先撇除探索性測試/使用者驗收測試 等,因為目的不同)
也稱為 功能測試(functional test),測試角度會更以 User 作為出發點。
黑箱測試時,無須了解產品背後程式、資料處理方式、系統架構等。
若以 登入頁面 來說,擁有的欄位大部分通常是以下
那麼進行測試時,就會針對
以這個為基礎的測試,就會是黑箱測試,但同時它也是整合/系統測試的一種。
我不用深入了解 登入功能 背後是否做了什麼邏輯判斷、是否有運用加密技術、DB如何設計等等較複雜知識。
它的測試角度就會更以 開發 作為出發點。
白箱測時,就會需要了解到產品背後的程式、資料處理方式、系統架構、資料流向等。
所以通常執行該測試的人員,都需具備一定的技術含量,才有辦法
另外先前提到 單元測試 也是白箱測試的一種。
是屬於較為進階的測試領域,也一定是需要具備一定程度的技術含量。
效能測試就是找出該系統效能上的指標,只要與伺服器效能指標相關的測試都屬於效能測試。
主要目標不是要找缺陷(bug),而是要消除系統瓶頸和替未來的回歸測試(regression tests)建立一個底線
常見的指標如下:
1. 響應時間
2. 併發使用者數
3. 伺服器處理能力
4. 吞吐量
等等效能指標
詳細的內容先前有寫過 :[學習筆記]你/我都應該要了解的效能測試、負載測試、壓力測試
(我盡量不湊文章內容了XDD,請自行閱讀)
我覺得效能上的測試,是屬於 CP 值比較高的測試種類。
因為當網站承受不住高流量而直接癱瘓造成的損失應該會遠遠大於【某個文案錯誤、某個欄位沒有防呆錯誤訊息】等基礎項目多更多
使用者甚至是連網站都無法進入,還何需談體驗