性能測試–測試計劃篇
一、測試背景
首先要闡述本次性能測試的背景,即被測系統類型,面向哪些用戶,具備什麼特點,為什麼要進行性能測試,預期的一些指標等等。
比如:為了保證「雙十一」大促期間,系統能穩定運行且保障業務的高可用,進行性能測試。
核心:評估系統性能、分析性能變化趨勢、定位系統瓶頸風險、協助規劃系統容量。
二、測試目的
測試的目的要根據測試背景來分析設定,比如:
1、線上服務由於流量過高某部分應用掛了,那測試目的就是:定位瓶頸、分析調優驗證;
2、運營做了拉新和新的渠道拓展,那測試目的就是:評估系統性能是否滿足新的線上業務;
3、系統架構由集群技改為微服務,那測試目的就是:驗證穩定性、可用性、單實例容量,為線上服務擴容提供容量規劃數據;
三、測試範圍
通過需求調研,分析用戶使用場景,對業務數據量增長變化趨勢及峰值活躍用戶等數據做定量分析,確定被測系統的應用範圍,比如訂單+購物車+商品+支付服務。

四、術語約定
這裡的術語指的是:涉及本次性能測試相關的一些專業術語說明,目的是統一口徑,做解釋說明,便於參與本次性能測試的相關人員理解。常見術語如下:

PS:術語約定以實際情況為準,還要考慮性能測試計劃的受眾對於性能測試的了解程度,本約定旨在統一描述的口徑,降低溝通成本。
五、環境說明
一般來說,進行性能測試的環境都是在UAT或者獨立的性能測試環境,但為了準確描述環境類型和配置,以及測試環境和生產環境的區別,建議對生產環境和測試環境進行對比說明。
1、生產環境
①、系統架構

PS:上圖只是一個簡略的微服務類型系統架構,只做示意,理解即可。
②、服務配置

2、測試環境
①、系統架構

②、服務配置

3、負載機配置
負載機(machine)即模擬客戶端發送請求的機器,一般情況下,說明負載機的硬體配置,數量,IP,發壓策略即可。
4、網路
即負載機和性能測試環境的網路狀況,比如中國公網/同一VPC內網,防火牆策略等。
六、需求分析
需求分析一般有這幾個階段:需求接入→需求收集→需求分析,主要內容如下:
1、業務模型
如下是一個典型的電商平台核心業務鏈路圖,涉及到登錄、首頁、商品、購物車、支付、分享等模組。

2、性能指標
這裡的性能指標包含如下兩項:
①、業務性能指標
即預期的TPS、RT、請求成功率(一般默認請求成功率≥99.99%)。
②、硬體性能指標
即服務端資源耗用指標,常規的資源監控指標有:CPU使用率、Memory使用率、系統IO、網路IO等。
七、測試策略
本次性能測試所採用的測試策略,比如:
探測系統性能拐點,需要階梯式壓測;
探測系統在可接受的性能指標下最大的處理能力,需要採用負載、容量測試策略;
驗證系統的穩定性和高可用,需要採用穩定性、高可用測試策略;
驗證系統在不同配置下的性能表現,一般採用配置測試策略;
1、測試策略及場景
①、容量測試

②、穩定性測試

PS:如上表格描述,依然作為一個示例來說明,主要內容包括:場景編號、測試類型、涉及業務場景、業務配比、執行時間、測試目的。
2、測試監控策略

八、準備工作
準備工作主要包含如下幾項:

九、組織架構
組織架構即本次性能測試涉及到的團隊各角色成員,主要包含這些:PM角色、測試、開發、運維、DBA、網路、基礎架構。示例:

十、風險分析
羅列開始執行前會影響本次性能測試工作開展的風險項以及應對方案,比如:

十一、交付清單
在性能測試計劃中,需要說明本次性能測試各階段的交付物,主要包含這幾項:性能測試計劃&方案、測試腳本、性能缺陷統計、輪次小節、性能測試報告。
十二、階段進度
這裡主要指的是從需求階段到結束,各個階段的工作進展以及資源安排,建議採用看板的方式,及時更新進度,方便推進工作的開展。示例如下:

如上,就是一個較為完整的性能測試計劃內容,當然,完成性能測試計劃並評審通過後,就可以進入測試執行階段了。。。