性能測試工具Jmeter由于其體積小、使用友善、學習成本低等原因,在現在的性能測試過程中,使用率越來越高,但其本身也有一定的缺點,比如提供的測試結果可視化做的很一般。
不過從3.0版本開始,jmeter引入了Dashboard Report子產品,用于生成HTML類型的可視化圖形報告(3.0版本的Dashboard Report子產品會中文亂碼,是以建議使用3.0以上的版本)。
這篇部落格,簡單介紹下在利用jmeter進行性能測試時,生成HTML的可視化測試報告。。。
一、生成HTML測試報告的兩種方式
1、利用已有.jtl檔案生成報告
之前的部落格介紹過如何在linux環境運作jmeter并生成報告,如果已經有經過測試生成的.jtl檔案,可以利用該檔案直接生成HTML可視化測試報告。
進入jmeter的bin目錄下,輸入如下指令:
jmeter -g test.jtl -o /path # -g:後跟test.jtl檔案所在的路徑 # -o:後跟生成的HTML檔案存放的路徑
PS:如果是在Windows環境指令行運作,必須指定生成的HTML檔案存放檔案夾,否則會報錯;如果是linux環境,如指定路徑下不存在該檔案夾,會生成對應的檔案夾存放報告檔案!
2、無.jtl檔案生成測試報告
如果還未生成.jtl檔案,則可以通過如下指令,一次性完成測試執行和生成HTML可視化報告的操作,進入jmeter的bin目錄下,輸入如下指令:
jmeter -n -t test.jmx -l test.jtl -e -o /path # -n:以非GUI形式運作Jmeter # -t:source.jmx 腳本路徑 # -l:result.jtl 運作結果儲存路徑(.jtl),此檔案必須不存在 # -e:在腳本運作結束後生成html報告 # -o:用于存放html報告的目錄
我本地Windows環境執行截圖如下:

PS:(linux系統和windows系統指令一樣)需要注意的是,生成的.jtl檔案路徑下,不能存在同名的.jtl檔案,否則會執行失敗。
執行完畢後,用浏覽器打開生成的檔案目錄下的index檔案,效果展示如下:
二、圖表資訊詳解
測試報告分為兩部分,Dashboard和Charts,下面分開解析。
1、Dashboard(概覽儀表盤)
①、Test and Report informations
②、APDEX (應用性能名額)
關于APDEX的相關資訊,請參考這裡:應用性能名額;英文原文,參考這裡:Apdex-Wikipedia
③、Requests Summary
2、Charts(詳細資訊圖表)
PS:由于詳細資訊圖表有點多,這裡我挑幾個性能測試過程中比較關鍵的圖表解析!
Over Time
①、Response Times Over Time(腳本運作期間的響應時間變化趨勢圖)
說明:可以根據響應時間和變化和TPS以及模拟的并發數變化,判斷性能拐點的範圍。
②、 Response Time Percentiles Over Time (successful responses)
說明:腳本運作期間成功的請求響應時間百分比分布圖,可以了解為聚合報告裡面不同%的資料,圖形化展示的結果。
③、Bytes Throughput Over Time(腳本運作期間的吞吐量變化趨勢圖)
說明:在容量規劃、可用性測試和大檔案上傳下載下傳場景中,吞吐量是很重要的一個監控和分析名額。
④、 Latencies Over Time(腳本運作期間的響應延時變化趨勢圖)
說明:在高并發場景或者強業務強資料一緻性場景,延時是個很嚴重的影響因素。
Throughput
①、Transactions Per Second(每秒事務數)
說明:每秒事務數,即TPS,是性能測試中很重要的一個名額,它是用來衡量系統處理能力的一個重要名額。
Response Times
①、 Response Time Percentiles(響應時間百分比分布曲線圖)
說明:即響應時間在某個範圍内的請求在所有請求數中所占的比率,相比于平均響應時間,這個值更适合用來衡量系統的穩定性。
②、Time Vs Threads(平均響應時間和線程數的對應變化曲線)
說明:可以通過這個對應的變化曲線來作為确定性能拐點的一個參考值。
以上内容,即為jmeter生成HTML格式測試報告的方法以及報告内容解析,個人覺得這個圖表可以進行再次開發,變得更靈活和易用。。。
轉載請注明出處,商用請征得作者本人同意,謝謝!!!