nGrinder詳細介紹及效能工具對比

testingbang發表於2019-08-27

在介紹nGrinder之前,有必要先說一下 The Grinder 拋磚引玉。

一、The Grinder

1、The Grinder是一個基於Java的開源效能測試框架,透過多個agent負載機很方便的進行分散式測試。

nGrinder詳細介紹及效能工具對比

2、主要特性:

可以測試任何java程式碼,包括各種常用的介面

如HTTP web servers, SOAP和REST web services,還有客戶端伺服器RMI、JMS、EJBs等,還支援自定義協議。

測試指令碼使用python和Clojure語言

成熟的HTTP協議支援:

自動管理客戶端連線和cookies,SSL代理;

支援錄製指令碼,能夠記錄並回放瀏覽器和網站之間的複雜互動。

包括console和agent端

3、不足

一次只能執行一個測試

沒有測試歷史記錄

沒有圖形化的測試報告

二、nGrinder

nGrinder是基於Grinder的開源的web效能測試平臺,由韓國最大網際網路公司NHN公司的開發團隊進行了重新設計和完善。

特性:開源、易用、高可用、可擴充套件


nGrinder詳細介紹及效能工具對比

1、nGrinder 在 Grinder 的基礎上:

實現多測試並行

基於web的管理

實現cluster

內建svn,方便的指令碼編輯、管理

支援Groovy指令碼,相對於Jython,可以啟動更多的虛擬使用者

實現對目標伺服器的監控

外掛系統擴充套件

2、工作原理

由一個控制端controller和多個代理端agent組成,透過控制端(瀏覽器訪問)建立測試場景,然後分發到代理端進行壓力測試。

使用者按照一定規範編寫測試指令碼,controller會將指令碼以及需要的資源分發到agent,用jython執行。

在指令碼執行的過程中收集執行情況、相應時間、測試目標伺服器的執行情況等。並且儲存這些資料生成測試報告,透過動態圖和資料表的形式展示出來。使用者可以方便的看到TPS、被測伺服器的CPU和記憶體等情況。


nGrinder詳細介紹及效能工具對比

三、LoadRunner JMeter 與 nGrinder對比

1、Loadrunner

基於UI操作,容易上手。早期很流行,功能強大,但是太笨重,安裝很麻煩。

不開源,擴充套件性不高,收費貴。往後的方向肯定是客戶端工具逐步向平臺化發展,所以已經慢慢被替代了。

2、JMeter

基於UI操作,容易上手,但是程式設計能力較弱(使用beanshell指令碼語言)。

其次JMeter基於執行緒,模擬數千使用者幾乎不可能。

3、nGrinder

單節點可支援4000~6000併發、支援分散式、可監控被測伺服器、可錄製指令碼、開源、平臺化。

引數化功能較弱

對測試人員的程式碼要求較高

nGrinder詳細介紹及效能工具對比


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69942496/viewspace-2655030/,如需轉載,請註明出處,否則將追究法律責任。

相關文章