2016-09-16 229 views
2

enter image description here附加的是我的測試中的Summary ReportJmeter的吞吐量計算

請幫我理解JMeter計算的吞吐量值如何: 例如第一行53.1/min的吞吐量,這個數字是如何由JMeter用哪個公式計算的。

此外,想知道後續測試中的吞吐量值如何分爲分鐘或秒。例如,第二行的吞吐量爲1.6/sec,那麼JMeter如何根據時間單位計算此吞吐量值?

在網上嘗試了很多網站,並得到了一個普遍的答覆,即吞吐量是在測試期間發送到服務器的每單位時間(秒,分鐘,小時)的請求數。但是這並不適用於我在圖表中看到的結果,而是直接解釋它的方式。

+0

請參閱附件的總結報告的細節。 –

回答

9

Documentation吞吐量定義爲

請求/單位時間。時間從第一個樣本的開始到最後一個樣本的末尾計算。這包括樣本之間的任何間隔,因爲它應該表示服務器上的負載。 公式如下:吞吐量=(請求數)/(總時間)。所以你的情況

你有1個請求,歷時1129ms,所以

Throughput = 1/1129ms = 0.00088573959/ms 
      = 0.00088573959 * 1000/sec = 0.88573959/sec 
      = 0.88573959 * 60/min = 53.1443754/min, rounded to 53.1/min 

對於1個請求總時間(或經過的時間)是一樣的,因爲這一次操作的時間。對於要求多次執行,這將是等於

Throughput = (number of requests)/(average * number of requests) = 1/average 

例如,如果你把最後一行在你的屏幕截圖(21個請求),它具有695的平均值,因此吞吐量是:

Throughput = 1/695ms = 0.0014388489/ms = 1.4388489/sec, rounded to 1.4/sec 

在單位(秒/分/小時)計算,總結報告執行此:

  • 缺省情況下它顯示吞吐量秒
  • 但是,如果可以通過我n秒< 1.0,將它如果它仍然< 1.0轉變爲分鐘
  • ,將其轉換爲小時
  • 它之後的舍入值設置爲1個十進制數字。

這就是爲什麼一些值以秒爲單位顯示,一些以分鐘顯示,另一些可能以小時顯示。有些甚至可能有0.0的價值,這基本上意味着吞吐量爲< 0.04

+0

公式'1/average'適用於一個線程。如何改變幾個線程? – olyv

+0

@olyv平均值不是每個線程,而是所有線程。所以一個或多個線程,公式是相同的 –