本節主要對 JMeter 與 LoadRunner 的優缺點進行概要的總結,若有不足之處,敬請指正,不勝感激!
同時,我也不得不承認,在對 JMeter 和 LoadRunner 進行比較時,我個人的確偏向了 JMeter(免費、開源、跨平台、靈活擴展)。在本節中,您可以把本節中所述的觀點看作我個人對開源 JMeter 的推介。事實上,JMeter 現在正是我在學習的自動化測試工具之一,也確實成為了我日常自動化測試的主要工具之一,而 LoadRunner 因其高昂的費用以及軟硬件負荷,讓我有些望塵莫及,也可以說是心有余而力不足。
JMeter與LoadRunner的相似之處:
- JMeter 跟 LoadRunner 架構基本相同。均通過中間代理,監控&收集並發客戶端發現的指令,生成腳本,再發送到應用服務器,再監控服務器反饋結果的一個過程
- JMeter中也有分布式中間代理功能。這個分布式分理是指可設置多台代理在不同PC中,通過遠程進行控制,即通過使用多台機器運行所謂的 Agent 來分擔 Load Generator自身壓力,並借此來獲取更大的並發用戶數
JMeter相對於LoadRunner的優勢:
- 開源免費:JMeter是一款免費的開源軟件,使用它不需要支付任何費用
- 跨平台:java開發的開源軟件
- 小巧:相比LR的龐大(LoadRunner 4GB左右),它非常小巧(最新版本2.12僅有33M左右)
- 免安裝:但需要JDK環境,因為它是使用java開發的工具
- JMeter 可以做web程序的功能測試,利用JMeter 中的樣本,可以做灰盒測試, LoadRunner 主要用作性能測試
- 功能強大:jmeter設計之初只是一個簡單的web性能測試工具,但經過不段的更新擴展,現在可以完成數據庫、FTP、LDAP、WebService等方面的測試
- 靈活擴展:因其開源,可獲取源代碼進行二次開發、封裝、優化,對其功能進行客制化,使其更好的適應測試需求;也可以根據自己的需求擴展它的功能,可自行編寫擴展包(jar),放在{apache-jmeter-2.12\lib\ext}目錄下,通過 Java請求 引用即可
JMeter相對於LoadRunner的不足:
- 界面不美觀(開源典型的特點)
- 結果數據展示存在不足
- 結果分析能力沒有 LoadRunner 詳細
- 錄制功能、調試環境存在一定的差距
- JMeter 沒有 IP 欺騙功能,IP欺騙是指在一PC台上多個IP地址來分配給並發用戶。這個功能對於模擬較真實的客戶環境來說,比較有用
- JMeter 非商業軟件,無專業技術支持,因起步較晚相應的學習資料較少,不過隨着 JMeter 使用群體的逐漸壯大,相信此種情況會有很大的改觀。
最后,因個人對 JMeter 和 LoadRunner 的粗淺認知,此文中若有不足之處,敬請告知。同時,希望這篇文章不會引起 LoadRunner 的堅定的擁護者們的反感,若有冒犯之處,敬請見諒!畢竟存在即有意義。若有任何不同見解,我非常歡迎您理性的留言探討,非常感謝! ^_^
