iT邦幫忙

2023 iThome 鐵人賽

DAY 28
0
Software Development

軟體架構備忘錄系列 第 28

Day 28 DevOps - CI效能測試、資安測試 (知識點134~138)

  • 分享至 

  • xImage
  •  

思考的問題

CI測試中,除了測試功能符合需求外,還有哪些測試呢?

常見的測試包含效能測試:壓力測試、負載測試、效能測試
以及 資安測試:白箱程式碼掃描 以及黑箱滲透測試

壓力測試

描述

壓力測試 (Stress Test) 的主要目標是評估系統在承受多大負載時可能會變得無法正常運作。

測試方式

  • 逐漸增加請求量:這種方法是在壓力測試過程中逐步增加每秒請求的數量或請求的內容大小,以模擬實際使用中的高負載情況。
  • 監控系統指標:進行壓力測試期間,監控系統的各項指標,例如CPU使用率、記憶體使用量等,以評估系統的性能表現。
  • 紀錄崩潰與錯誤:記錄壓力測試期間系統的崩潰情況和錯誤事件,包括出現錯誤的情況和頻率。
  • 評估性能極限:當系統無法回應或處於不穩定狀態時,紀錄當時的請求量,以確定系統的性能極限。

負載測試

描述

負載測試 (Load Test) 旨在將系統保持在長時間的高請求量下,以評估系統在高負載情況下的穩定性和性能表現。

測試方式

  • 逐漸增加請求量:在測試過程中,逐漸增加系統的請求量,模擬實際使用情境下的高載入情況。
  • 監控系統指標:在負載測試期間,監控系統的各項性能指標,例如CPU使用率、記憶體使用量等,以評估系統的性能。
  • 紀錄錯誤資訊:記錄測試過程中出現的錯誤情況,包括錯誤的類型和出現的頻率。
  • 確認負載能力:確認系統在高負載情況下是否能穩定提供服務,並評估其性能極限。

效能測試

描述

效能測試 (Performance Test) 旨在評估系統各功能的回應速度是否符合預先定義的指標。通常在制定服務等級協議(SLA)時,會明確定義各功能的回應時間要求,因此效能測試常用於CICD過程中,以驗證系統是否能夠達到這些SLA要求。

測試方式

  • 定義測試目標:根據SLA中定義的目標和指標,確定需要測試的功能和性能要求。
  • 驗證回應速度:在測試中,紀錄各請求的回應速度,包括平均回應時間、最大回應時間等,並與SLA中的要求進行比較。確保系統能夠在實際使用中滿足性能指標。

白箱程式碼掃描

描述

白箱程式碼掃描 (White box source code scan) 使用程式碼掃描工具檢測程式碼內是否有安全性漏洞,並條列出各種風險分類及風險等級。以確保程式碼並未有嚴重的資安風險,並減少安全性漏洞。

測試方式

  • 提供程式碼:使用程式碼掃描工具針對程式原始碼直接進行分析
  • 分析弱點:經過程式碼分析後,列出風險內容
  • 提供修改建議:針對風險分類提供常見修改方式建議

滲透測試

描述

滲透測試 (Penetration Test) 是一種測試方法,不同於白箱程式碼掃描,它不需要事先取得程式碼。滲透測試的目的在於模擬駭客的攻擊行為,以尋找系統中的安全性弱點。如果測試成功,即表示發現了潛在的安全性風險。

測試方式

  • 模擬攻擊:測試人員事先指定目標服務或系統,然後使用特殊工具或技術模擬各種可能的攻擊場景,常見測試方式包含:惡意軟體、惡意腳本、網路攻擊等
  • 紀錄結果:測試人員會記錄測試的結果,這包括是否成功取得系統資訊、是否引發系統錯誤、系統回應時間是否異常等。這些紀錄用於評估系統的安全性


上一篇
Day 27 DevOps - CI功能測試 (知識點129~133)
下一篇
Day 29 DevOps - 佈署策略 (知識點139~144)
系列文
軟體架構備忘錄30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言