iT邦幫忙

2023 iThome 鐵人賽

DAY 27
0
Software Development

軟體架構備忘錄系列 第 27

Day 27 DevOps - CI功能測試 (知識點129~133)

  • 分享至 

  • xImage
  •  

思考的問題

CICD中,如何驗證功能是否已符合需求?


單元測試

描述

單元測試 (Unit test) 是CICD中的重要測試環節,事先定義各元件的測試腳本。並於程式開發時以及程式放上版本庫後由系統自動觸發測試。

測試目標

  • 功能符合需求:確認程式功能已滿足事先設定的各情況
  • 未造成非預期影響:並避免功能異動時造成非預期的影響

測試過程

  • 測試對象:通常對各類別、物件或方法進行測試
  • 測試方式:預先定義測試傳入值、預期傳回值 以及測試順序

系統整合測試

描述

系統整合測試 (System integration test,SIT) 是在通過單元測試後,由開發或測試團隊,針對多個系統元件功能進行整合測試,確保功能使用時符合需求。

案例

  • 商品下單測試:按照事先定義的情境,模擬使用者到網站檢視商品清單、填寫訂單資料、並成功將訂單寫入資料庫。以確認包含前端介面、後端金額計算、資料庫寫入 等部分都可正常共同運作。

測試流程

  • 定義測試範圍:事先定義使用情境,設計各情境下的預期操作動作及結果。
  • 建置測試環境:模擬正式環境的情況,建立一個測試專用的運行環境及資料庫。
  • 實際進行測試:針對各功能模組進行測試,確保各自功能符合預期。
  • 紀錄錯誤資訊:記錄各非預期情況的資訊
  • 確認是否通過測試:按照測試結果,確認是否可通過SIT測試,進行後續CICD階段

使用者驗收測試

描述

使用者驗收測試 (User acceptance test,UAT) 是在通過測試團隊的整合測試後,由實際使用者或是Key User進行驗收測試,以確定功能符合實際需求。其測試流程類同於SAT,但是測試單位為使用者。


使用者黑箱測試

描述

使用者黑箱測試 (Black box test) 由一般使用者在不清楚功能細節的情況下進行測試。以確保一般使用者可正常使用系統。

測試流程

  • 測試人員:一般使用者
  • 測試方法:在不清楚功能細節時,直接進行測試
  • 測試預期:確保一般使用者在不清楚操作模式時是否可以順利完成功能目標,並不會產生非預期的錯誤。
  • 測試目標:UI與UX設計合適、操作上不會產生非預期系統問題

測試案例

測試商品下單:由一般使用者在不知道如何下單的情況下,自行摸索功能,確認可順利找出目標下單商品,並完成下單動作。


使用者白箱測試

描述

使用者白箱測試 (White box test) 由Key User在清楚功能細節的情況下進行測試。以確保各項功能接滿足需求。

測試流程

  • 測試人員:Key User
  • 測試方法:清楚功能細節,針對各功能目標分別進行驗證
  • 測試目標:確保各功能皆符合使用者需求

測試案例

測試商品下單:由Key User詳細測試商品搜尋的各功能以及各種付款方式,以確定各情境下系統皆符合需求。


猴子測試

描述

猴子測試 (Monkey test) 是由測試軟體模擬使用者隨機操作。確保系統再非正常使用時不會出現嚴重系統錯誤問題。其目標為提升系統的穩定度,

測試過程

  • 定義範圍:事先界定測試的畫面、資料狀態
  • 測試方式:隨機點擊、拖曳、滑動、鍵盤輸入等
  • 紀錄測試結果:記錄各錯誤情況的輸入方式及錯誤訊息


上一篇
Day 26 DevOps - CI自動建置 (知識點126~128)
下一篇
Day 28 DevOps - CI效能測試、資安測試 (知識點134~138)
系列文
軟體架構備忘錄30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言