【JMeter】常用后置處理器性能比較(上)


前幾天看了這篇文章 JMeter – Response Data Extractors – Comparison ,結論有點嚇人

 

用了css提取器吞吐率降到不足1/15?!按作者結論最快的正則提取器也降到1/5?

如果真是那樣那沒法用了,就好像測水溫,溫度計一插下去降了80度那還測個毛……

 

讓我覺得奇怪的是,作者沒有放出每個提取器里寫了什么,為啥用一段XML的報文能測這么多提取器

實驗了一下發現,作者的測試方法就是提取器里什么都不寫

當且僅當什么都沒寫時,作者的結論才是正確的……

 

但如果放到更貼近實際的場景里測試,會得出完全不一樣的結論:

這些提取器在什么都沒寫時,比實際做了什么還慢得多,導致這么嚇人的測試結果

 

下面來個正經點的測試,按不同返回類型比較提取器


 環境:jmeter 2.13、JDK 1.8u73、JVM參數從來沒動過、win 10 pro

 

測試計划如下:

先用單線程單循環調試,調試采樣器和查看結果樹都打開

 

事前准備

所有dummy sampler都設成沒有延時

 請求數據不用改,響應數據分別設置:

xml跟那文章的作者一樣貼這個 http://www.w3schools.com/xml/cd_catalog.xml

html隨便來個google地圖的示例

json用這里面的 http://goessner.net/articles/JsonPath/

 

紅框圈出的是分別想提取的數據:

 

 

設置好各提取器,調試,發現xpath提取器報錯了

看看dummy sampler里的html,發現是 & 符號搞鬼,改成url編碼 &

 

 再試,還有錯

把async和defer改成符合xhtml規范,搞定

 

調試通過后的各提取器設置如下:

 

調試結果如下:

 

 

接下來修改各個線程組設置:

一律設成10線程,1秒集結(即每隔0.1秒來1個),持續60秒,沒啟動延遲。跟那文章作者的設置保持一致

(開始和結束時間是自動生成的,不用管,設了持續時間它們就用不上了)

 

最后選中用不着的組件,按ctrl + t禁用掉(就是圖中變灰那些),就可以開始實際測試了

圖有點多,測試過程及結果留到下一篇放出


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM