如何做一份精緻的效能測試報告?

相比於普通的功能測試,效能測試對測試工程師的技能要求更高,一般來說,也只有中高階軟體測試工程師才有機會做效能測試。

如何做一份精緻的效能測試報告?

一、效能測試報告的目的

效能測試報告的

目的是:

總結過程,呈現結論。

效能測試做完了,怎麼做的,各項指標怎麼樣,是否符合預期,我們需要透過一份報告來呈現。

同時,效能測試報告也是一份留檔,在下次業務擴容進行壓測的時候可以作為基線參考,可以更好地評估壓測指標。

效能測試報告給誰看?

在做效能測試的過程中,很多時候是要研發工程師協助一起完成的,

所以最終的報告不僅是我們自己要看,同時也要給研發工程師及架構師看。

因此,我們在撰寫報告的時候要把各個角色關注的指標有效地呈現出來。

二、效能測試過程中的關注點

效能測試分別要關注

施壓端

和服務端。

施壓端

即我們用來模擬壓力發出請求的伺服器,常用的工具有Jmeter、Loadrunner等,模擬較大壓力時通常採用多臺機器組成的叢集。

在施壓過程中,

施壓端一般要關注三個指標:

qps(請求量)、rt(響應時間)、error(錯誤率)。

服務端

即服務程式所在的機器,一般是多臺伺服器組成的叢集,在效能測試過程中是被壓測的物件。

服務端(或服務叢集)一般關注下面幾個指標

:qps(處理的請求量)、rt(響應時間)、cup(cpu使用率)、mem(記憶體佔用情況)、load(負載)、traffic(

網路速率

)。

為什麼要關注上述這些指標呢?看完指標具體含義,你就能get到了:

1)qps

QPS(Query Per Second),每秒鐘能夠處理的請求的數量,是衡量一個系統性能的重要指標。

2)rt

RT(Response Time),響應時間(一般單位為ms),是指從客戶端發一個請求開始計時,到客戶端接收到從伺服器端返回的響應結 果結束所經歷的時間,響應時間由請求傳送時間、網路傳輸時間和伺服器處理時間三部分組成。一般情況下,響應時間還會細分為:最小響應時間、

平均響應時間

、最大響應時間。

3)error

error請求錯誤率,一個請求預期正常的返回code為200,其它code(比如302、404、500等)均為非預期的,記為錯誤。錯誤率是指在施壓機發送的所有請求中,返回code非200的佔比。

4)cpu

CPU(%) 是指測試任務執行的這個時間段內,應用服務系統的 CPU 資源佔用率。這是對一個時間段內CPU使用狀況的統計,透過這個指標可以看出在某一個時間段內CPU被佔用的情況,如果被佔用時間很高,那麼就需要考慮CPU是否已經處於超負荷運作,長期超負荷運作對於機器本身來說是一種損害,因此必須將CPU的利用率控制在一定的比例下,以保證機器的正常運作。

5)mem

Memory (%) 指的是當前系統記憶體的使用量佔總記憶體大小的比率,反應當前機器配置情況對應用的記憶體的一個承載能力,判斷擴容等重要指標。

6)load

Load 就是一定時間內,計算機的任務執行佇列的長度,cpu計算的佇列。 平均Load是指,在特定的一段時間內統計的正在CPU中執行的(R狀態)、正在等待CPU執行的、處於不可中斷睡眠的(D狀態)的任務數量的平均值。平均Load是最常用的指標。

7)traffic

Traffic (kb/s) 指的是網路傳輸的速率,反應了當前應用所屬伺服器頻寬的使用情況。可以細分為 in(入) 和 out(出),一般會統計 最大值、最小值、平均值等。

三、如何做一份精緻的報告

壓測結束,最後要輸出測試報告,一份精緻的報告不僅能夠很好地展示測試結果,同時也是體現自己的專業性的機會。

1、通過幾個問題來介紹精緻報告組成部分

問題1、用什麼文件寫?

如果自己所在公司沒有規定,建議緊跟線上協作的趨勢,使用線上文件編寫,比如騰訊文件、釘釘文件、

飛書文件

等,功能都很豐富好用。

如果自己的所在公司有內部協作平臺,就在指定平臺上寫,最終成稿之後複製到郵件正文傳送即可。

問題2、用什麼語言寫?

根據自己公司的型別來,一般國內公司就用中文,沒必要用英文,花裡胡哨反而不好。

如果是在國際化企業,有不同國籍員工,那就要用公司規定的語種。

問題3、報告內容用圖表還是文字?

我們可以參考優秀的報告模板,總結下來就是字要少,圖表要豐富,能用圖說明的絕不用文字。

相比於文字,圖表顯得專業、高階,而且壓測資料一般都是變化的,只有圖表才能夠準確直觀地展示壓測過程的各項指標。

測資料的圖表一般在壓測工具(Jmeter可以使用第三方外掛)中會自動生成【下方有Jmeter使用影片】,需要我們截圖並整理。圖表有了,接下來就該整理撰寫報告了。

問題4、關鍵內容有哪些?

一份完整的報告應該包含以下關鍵內容:

壓測資訊(包含任務名稱、壓測時間、相關責任人等)

施壓機資訊(包含機房資訊、機器配置等)

服務端資訊(包含機房資訊、機器配置等)

壓測結果(包含平均qps、最大最小耗時、cpu平均使用率、記憶體平均使用率、總的請求數、錯誤率等)

壓測詳情(單個介面時該內容可省略,多個介面時,則將第4項內容按介面拆分展示)

壓測指標(三大指標

qps

、rt、error的圖表放在這裡)

服務監控指標

(伺服器或叢集的指標圖表放在這裡)

問題5、排版格式注意什麼?

報告中字型要協調統一,縮排換行等基本排版要美觀。

問題6、報告附件補充什麼?

測試方案

測試測資料

問題7、傳送報告的注意事項

使用公司指定的郵箱傳送

收件人應包含相關的各個角色

2、給出一份測試報告的樣例,作為參考

如何做一份精緻的效能測試報告?

如何做一份精緻的效能測試報告?

如何做一份精緻的效能測試報告?

作為程式設計師,大家都普遍都低調含蓄,但是該展現自己專業性的時候一定要積極表現。

對於測試工程師來說不僅要掌握專業的測試技能,同時也要提升各種文件的撰寫能力,讓自己的技能得到全面的展現。

更多軟體測試相關學習禮包點選:

需要入門課程、資料、工具、筆記的小夥伴,點選這裡領取!