·自定義報告模板:
由於默認的ant提供的報告模板,是沒有tps和90%line這樣的數據。
可是在實際工做中,這兩個統計數據又是必須的,那麼咱們能夠經過自定義(修改)的方式來進行修改,達到咱們的目的。node
ant的報告模板採用的xlst語法來對jmeter的xml類型的結果進行的操做。中間元素定位的方式是和xpath基本一致。工具
·TPS:每秒事務數。
工具是如何計算的每秒事務數呢?
TPS=總的事務數/總的執行時間(場景時間)
總的執行時間=最後的啓動時間-最開始的啓動時間+最後一個請求的響應時間。xml
·在Jmeter的結果文件jtl中,t屬性表示請求的響應時間,ts屬性表示請求的開始時間。事務
操做:
一、添加Summary的列名。
<!-- add -->
<th>Last Time</th>
<th>每秒事務數</th>it
二、添加對應數據。
獲取場景開始時間。表示將全部的ts屬性的值傳入
<xsl:variable name="startTime">
<xsl:call-template name="sTime">
<xsl:with-param name="nodes" select="/testResults/*/@ts" />
</xsl:call-template>
</xsl:variable>io
template模板以下:
<xsl:template name="sTime">
<xsl:param name="nodes" select="/.." />
<xsl:choose>
<xsl:when test="not($nodes)">NaN</xsl:when>
<xsl:otherwise>
<xsl:for-each select="$nodes">
<xsl:sort data-type="number" />
<xsl:if test="position() = 1">
<xsl:value-of select="number(.)" />
</xsl:if>
</xsl:for-each>
</xsl:otherwise>
</xsl:choose>
</xsl:template>ast
添加數據列。
<!-- lastTime -->
<td align="right">
<xsl:call-template name="display-time">
<xsl:with-param name="value" select="$lastTime" />
</xsl:call-template>
</td>
<!-- QPS -->
<td align="right">
<xsl:call-template name="display-tps">
<xsl:with-param name="value" select="$tps" />
</xsl:call-template>
</td>模板
·90%line這樣的數據。
這個叫用戶體驗數據。百分比能夠修改。
90%line=將全部的響應時間數據,從小到大排列,取位置爲90%的值。
所以本質上也是獲取響應時間,只是要獲取特定位置的數據,和獲取最小和最大響應時間是接近的。
區別在於:
最小響應時間:位置是1
90%line響應時間:位置是 round($allcount*0.9)test