性能測試技術筆記(一):如何快速上手壓測工作

新年第一個工作日,繼續整理之前的技術筆記。

前面通過三篇的內容,將自動化測試相關的技術筆記做了整理彙總。

這篇內容,主要是我剛開始做性能測試時的一些記錄,對新手或者剛進入一個新項目的同學,應該有所幫助。

 

一般我們在剛介入一個項目時,我認爲可以從如下幾個方面來快速的上手壓測工作。

熟悉業務特性

無論是做什麼類型的測試工作,都脫離不了業務。

我們的被測對象,也是基於系統架構的用代碼實現的高度具象的業務系統。

如果是專職做性能測試,或者剛介入一個全新的系統進行壓測,想要短時間內瞭解業務細節是幾乎不可能的。

但爲了更好的快速開展工作,我個人的經驗是快速熟悉業務特性,結合自己的經驗對系統有個大致的瞭解。

什麼是業務特性呢?可以參照下面幾個例子:

  1. 電商下單業務:典型的先讀後寫類型,要考慮庫存、事務的一致性,還有響應時間的範圍;
  2. 大數據&報表業務:典型的讀場景,可能會涉及到緩存或者消息隊列,甚至是批處理;
  3. 金融風控信審業務:這種業務對響應時間沒有太高的要求,但業務鏈路較長,不同系統間的交互要考慮;
  4. 語音識別搜索業務:涉及到語音文字的識別轉換、準確率和命中率,計算密集型業務要更關注內存資源;

上述幾個例子只是參考,其實最核心的思路在於:瞭解業務有什麼特點,對響應時間、事務一致性的要求,可能的技術實現方式是什麼,用到了什麼技術組件,壓測時要關注哪些指標

 

瞭解系統架構

聊完業務特性後,被測系統的系統架構是一定要了解的。

因爲我們的工作對象是具體的系統,而且壓測要關注技術指標,關注請求處理的過程以及耗時等情況。

一般來說要了解被測系統的系統架構,可以通過如下幾種方式:

  1. 系統架構圖&網絡拓撲圖;
  2. 模擬幾個請求,藉助鏈路追蹤工具來繪製請求鏈路;
  3. 如果都沒有,通過監控觀察請求的變化,挨個摸底;
  4. 看業務需求的prd,瞭解業務之間的關係,然後映射到具體的服務和接口;

上述幾種方式是我常用的幾種方式,在具體工作中要靈活變通,而且這種對系統架構摸底和請求鏈路的瞭解過程,也是個人快速學習和成長的過程。

下面是一個請求被處理的過程,也是一個較爲完整的常見微服務架構,供參考。

 

 

團隊工作方式

團隊工作方式,不僅限於性能測試團隊或者測試團隊,而是從需求到發佈整個軟件研發過程各個團隊是如何協同配合的。

剛進入一個新的團隊或者介入一個新項目時,可以從下面幾個方面去熟悉,主要包括:

  1. 流程:包含需求評審、提測、UAT、灰度和生產發佈等主要流程以及時間節點;
  2. 環境:開發環境、測試環境、UAT環境以及生產環境,主要涉及域名、權限、負責人等;
  3. 基礎工具:配置中心、註冊中心、需求&缺陷管理平臺、CICD流水線工具、監控分析工具等;
  4. 測試工具:包含壓測工具、抓包工具、造數工具、mock工具、文檔管理工具、協作辦公溝通工具等;
  5. 測試方法:之前怎麼做壓測?對指標有沒有標準或定義?測試方案測試報告的撰寫要求等;
  6. 協作人員:不同業務域或者業務系統的研發/運維/DBA是誰,跨團隊的溝通協作方式等;

以上幾點是我個人看來比較重要的一些點,快速瞭解這些之後,也會有助於工作更好的開展。

 

以上內容來源於我之前做性能測試工作時的筆記內容,稍加提煉和修改。

下一篇我會聊聊做性能測試前期的一些準備工作如何開展。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章