1. 程式人生 > >JMeter工具簡單介紹

JMeter工具簡單介紹

一、JMeter介紹

Apache JMeter是100%純JAVA桌面應用程式,被設計為用於測試客戶端/服務端結構的軟體(例如web應用程式)。它可以用來測試靜態和動態資源的效能,例如:靜態檔案,Java Servlet,CGI Scripts,Java Object,資料庫和FTP伺服器等等。JMeter可用於模擬大量負載來測試一臺伺服器,網路或者物件的健壯性或者分析不同負載下的整體效能。同時,JMeter可以幫助你對你的應用程式進行迴歸測試。通過你建立的測試指令碼和assertions來驗證你的程式返回了所期待的值。為了更高的適應性,JMeter允許你使用正則表示式來建立這些assertions.

JMeter與LoadRunner比較

JMeter 是一款開源(有著典型開源工具特點:介面不美觀)測試工具,雖然與LoadRunner相比有很多不足,比如:它結果分析能力沒有LoadRunner詳細;很它的優點也有很多:

1.開源,他是一款開源的免費軟體,使用它你不需要支付任何費用,

2.小巧,相比LR的龐大(最新LR11將近4GB),它非常小巧,不需要安裝,但需要JDK環境,因為它是使用java開發的工具。

3.功能強大,jmeter設計之初只是一個簡單的web效能測試工具,但經過不段的更新擴充套件,現在可以完成資料庫、FTP、LDAP、WebService等方面的測試。因為它的開源性,當然你也可以根據自己的需求擴充套件它的功能。

兩者最大的區別:jmeter不支援IP欺騙,而LR支援。

JMeter缺點與內部功能詳細說明

使用JMeter無法驗證JS程式,也無法驗證頁面UI,所以要須要和Selenium配合來完成Web2.0應用的測試。

二、JMeter下載安裝

1)JMeter安裝

2.安裝JDK,配置環境變數JAVA_HOME.

3.系統要求:JMeter2.11 需要JDK1.6以上的版本支援執行

4.JMeter可以執行在如下作業系統上:Unix,Windows和Open VMS.

5.避免在一個有空格的路徑安裝JMeter,這將導致遠端測試出現問題。

2)JMeter外掛安裝

2.外掛下載後解壓:找到JMeterPlugins-Extras.jar,把JMeterPlugins-Extras.jar放到apache-jmeter-2.12\lib\ext目錄。

三、JMeter執行

1. 進入bin目錄執行jmeter.bat啟動jmeter

注意:開啟的時候會有兩個視窗,JMeter的命令視窗和JMeter的圖形操作介面,不可以關閉命令視窗。

2.JMeter的classpath:

如果你想新增其他JAR檔案到JMeter的classpath中,你必須複製他們到lib目錄中;

如果你開發了一個JMeter特定元件或有效的jar檔案,複製到lib目錄下的ext目錄中。

3. 開啟之後顯示的是中文,如果你想使用其他語言,比如英文,那麼通過選單選項->選擇語言->英文即可,當然轉為中文也是同樣操作。

四、JMeter測試計劃元件

開啟Jmeter頁面:包括測試計劃+工作臺。

1、Test Plan(測試計劃):用來描述一個性能測試,包含與本次效能測試所有相關的功能。也就說本的效能測試的所有內容是於基於一個計劃的。

右鍵單擊“測試計劃”彈出選單:


注意:

函式測試模式”複選框,如果被選擇,它會使Jmeter記錄來自伺服器返回的每個取樣的資料。如果你在測試監聽器中選擇一個檔案,這個資料將被寫入檔案。如果你嘗試一個較小的測試來保證Jmeter配置正確並且你的伺服器正在返回期望的結果,這是很有用的。這樣做的後果就是這個檔案會快速的增大,並且Jmeter的效率會影響。

如果不記錄資料到檔案,這個選項就沒有不同了。

2、Threads(Users)執行緒使用者


雖然有三個新增執行緒組的選項,名字不一樣,建立之後,其介面是完全一樣的,之前的版本只有一個執行緒組的名字。現在多一個setUptheread Group與terDown Thread Group

1) setup thread group

一種特殊型別的ThreadGroup的,可用於執行預測試操作。這些執行緒的行為完全像一個正常的執行緒組元件。不同的是,這些型別的執行緒執行測試前進行定期執行緒組的執行。

setUp Thread Group類似於lr的init.可用於執行預測試操作。

2) teardown thread group

一種特殊型別的ThreadGroup的,可用於執行測試後動作。這些執行緒的行為完全像一個正常的執行緒組元件。不同的是,這些型別的執行緒執行測試結束後執行定期的執行緒組。

tearDown Thread Group類似於lr的end.可用於執行測試後動作。

3) thread group(執行緒組).

這個就是我們通常新增執行的執行緒。通俗的講一個執行緒組,,可以看做一個虛擬使用者組,執行緒組中的每個執行緒都可以理解為一個虛擬使用者。執行緒組中包含的執行緒數量在測試執行過程中是不會發生改變的。


執行緒組:

名稱:就如字面意思,起個有意義的名字就行

註釋:

執行緒數:這裡選擇5

Ramp-Up Period:單位是秒,預設時間是1秒。它指定了啟動所有執行緒所花費的時間,比如,當前的設定表示“在5秒內啟動5個執行緒,每個執行緒的間隔時間為1秒”。如果你需要Jmeter立即啟動所有執行緒,將此設定為0即可

迴圈次數:表示每個執行緒執行多少次請求。

3、測試片段(Test Fragment)

測試片段元素是控制器上的一個種特殊的執行緒組,它在測試樹上與執行緒組處於一個層級。它與執行緒組有所不同,因為它不被執行,除非它是一個模組控制器或者是被控制器所引用時才會被執行。


控制器

JMeter有兩種型別的控制器:取樣器(sample)和邏輯控制器(Logic Controller),用這些原件來驅動處理一個測試。

4、取樣器(Sampler)

取樣器(Sampler)是效能測試中向伺服器傳送請求,記錄響應資訊,記錄響應時間的最小單元,JMeter原生支援多種不同的sampler, 如HTTP Request Sampler 、 FTP Request Sampler 、TCP Request Sampler 、 JDBC Request Sampler 等,每一種不同型別的 sampler 可以根據設定的引數向伺服器發出不同型別的請求。

在Jmeter的所有Sampler中,Java Request Sampler與BeanShell RequstSampler是兩種特殊的可定製的Sampler.


5、邏輯控制器(Logic Controller)

邏輯控制器,包括兩類無件,一類是用於控制test plan 中 sampler節點發送請求的邏輯順序的控制器,常用的有如果(If)控制器 、switch Controller 、Runtime Controller、迴圈控制器等。另一類是用來組織可控制sampler 來節點的, 如事務控制器、吞吐量控制器。


6、配置元件(Config Element)

配置元件(config element)用於提供對靜態資料配置的支援 CSV Data Set config 可以將本地資料檔案形成資料池 (Data Pool),而對應於HTTP Request Sampler和TCP Request Sampler等型別的配製無件則可以修改 Sampler的預設資料。

例如,HTTP Cookie Manager 可以用於對 HTTPRequest Sampler 的 cookie 進行管理。

HTTP 請求預設值不會觸發Jmeter傳送http請求,而只是定義HTTP請求的預設屬性。


7、定時器(Timer)

定時器(Timer)用於操作之間設定等待時間,等待時間是效能測試中常用的控制客戶端QPS的手段 類似於LoadRunner裡面的“思考時間”。 Jmeter 定義了Bean Shell Timer、Constant Throughput Timer、固定定時器等不同型別的Timer。


8、前置處理器(Per Processors)

前置處理器用於在實際的請求發出之前對即將發出的請求進行特殊處理。例如,HTTP URL重寫修復符則可以實現URL重寫,當RUL中有sessionID 一類的session資訊時,可以通過該處理器填充發出請求的實際的sessionID 。


9、後置處理器(Post Processors)

後置處理器是用於對Sampler發出請求後得到的伺服器響應進行處理。一般用來提取響應中的特定資料(類似LoadRunner測試工具中的關聯概念)。例如,Xpath Extractor 則可以用於提取響應資料中通過給定Xpath 值獲得的資料;正則表示式提取器,則可以提取響應資料中通過正則表示式獲得的資料。


10、斷言(Assertions)

斷言用於檢查測試中得到的相應資料等是否符合預期,斷言一般用來設定檢查點,用以保證效能測試過程中的資料互動是否與預期一致。


11、監聽器(Listener)

這個監聽器可不是用來監聽系統資源的元件。它是用來對測試結果資料進行處理和視覺化展示的一系列元件。 圖形結果、檢視結果樹、聚合報告、用表格察看結果都是我們經常用到的元件。


五、工作臺


在測試中我們可能需要暫時更改一些元件,可以把一些需要更改的元件儲存在工作臺中,測試完成後再恢復,但是切記:不能退出jmeter.一旦退出jmeter,工作臺中的內容就會消失。

相關推薦

JMeter工具簡單介紹

一、JMeter介紹 Apache JMeter是100%純JAVA桌面應用程式,被設計為用於測試客戶端/服務端結構的軟體(例如web應用程式)。它可以用來測試靜態和動態資源的效能,例如:靜態檔案,J

[轉]JMeter學習(一)工具簡單介紹

正在 包含 定義 寫入文件 線程組 element 層級 工作臺 roc 一、JMeter 介紹 Apache JMeter是100%純JAVA桌面應用程序,被設計為用於測試客戶端/服務端結構的軟件(例如web應用程序)。它可以用來測試靜態和動態資源的性能,例如:

JMeter學習(一)工具簡單介紹

一、JMeter 介紹      Apache JMeter是100%純JAVA桌面應用程式,被設計為用於測試客戶端/服務端結構的軟體(例如web應用程式)。它可以用來測試靜態和動態資源的效能,例如:靜態檔案,Java Servlet,CGI S

JMeter專題系列(一)工具簡單介紹

一、JMeter 介紹      Apache JMeter是100%純JAVA桌面應用程式,被設計為用於測試客戶端/服務端結構的軟體(例如web應用程式)。它可以用來測試靜態和動態資源的效能,例如:靜態檔案,Java Servlet,CGI Scripts,Java Object,資料庫和FTP伺服器等等

展示C代碼覆蓋率的gcovr工具簡單介紹及相關命令使用演示樣例

文件夾 mes repo 例如 oid else if dir total down (本人正在參加2015博客之星評選,誠邀你來投票,謝謝:username=zhouzxi">http://vote.blog.csdn.net/blogstar2015

iOS效能檢測之Instrunments - 幾種常用工具簡單介紹

Instrunments: 沒錯,就是這貨,很多人平時開發可能不一定會用到這個,但我要說的是,學會使用它,會讓你加分不少哦 先來一張一覽圖: 兩種方式都行。 2、今天主要介紹一下我常用的3種:Core Animation 、Leaks、Time Profiler

BT5下的各種web漏洞掃描工具簡單介紹使用

(1)Joomla security scanner Joomla security scanner可以檢測Joomla整站程式搭建的網站是否存在檔案包含、sql注入、命令執行等漏洞。這將幫助web開發人員和網站管理人員識別可能存在的安全弱點. Joomla Secur

Tomcat筆記 #01# WEB應用管理工具簡單介紹

webapp 我們 本地 一次 管理 ron inf targe role 索引 查看JVM以及SERVLET/接口的情況 動態管理WEB應用 Tomcat自帶了一個基於網頁的web應用管理工具,可以幫助我們監控&管理部署上去的WEB APP,

http介面開發幾種工具簡單介紹

背景相信大家在開發過程中,多少都會遇到對接別人系統介面,或者提供介面給他人使用(供應商、公司其他內部系統)。回顧我這幾年的專案開發,http介面的開發從未間斷,起初剛畢業的是就參與一個專案開發介面給app對接,尤其現在這家公司的工作任務有蠻大比例的任務都是跟介面開發有關。為什

Qt-Linguist工具簡單介紹和使用方法

轉載自:http://blog.163.com/[email protected]/blog/static/198942122010103115655557/ QT-Linguist工具主要用在專案的多語言翻譯處理過程中,所有先簡單介紹一下整個多語言處理過程,最後

Jmeter(一)工具簡單介紹(z)

名稱 auto 動態 read 需要 系統資源 數據 等等 ras 一、JMeter介紹 Apache JMeter是100%純JAVA桌面應用程序,被設計為用於測試客戶端/服務端結構的軟件(例如web應用程序)。它可以用來測試靜態和動態資源的性能,例如:靜態文件

網站壓力測試工具 Webbench簡單介紹

cgi 靜態頁面 服務 動態頁面 不同 傳輸數據 一個 php bench Webbech能測試處在相同硬件上,不同服務的性能以及不同硬件上同一個服務的運行狀況。Webbench的標準測試可以向我們展示服務器的兩項內容:每秒鐘相應請求數和每秒鐘傳輸數據量。Web

Java靜態檢測工具/Java代碼規範和質量檢查簡單介紹(轉)

pub 詳細 職責 web 循環 問題: 集成 死鎖 參考 靜態檢查: 靜態測試包括代碼檢查、靜態結構分析、代碼質量度量等。它可以由人工進行,充分發揮人的邏輯思維優勢,也可以借助軟件工具自動進行。代碼檢查代碼檢查包括代碼走查、桌面檢查、代碼審查等,主要檢查代碼和設計的一致

Java學習筆記43(打印流、IO流工具簡單介紹

println comm 學習筆記 dir puts str lose tof line 打印流: 有兩個類:PrintStream,PrintWriter類,兩個類的方法一致,區別在於構造器 PrintStream:構造方法:接收File類型,接收字符串文件名,接收字節輸

KVM工具libvirt、virsh、virt-manager的簡單介紹

lib 虛擬機 應用程序 pos kvm虛擬 命令 自動部署 body 進行 KVM虛擬化中libvirt是目前使用最為廣泛的對KVM虛擬機進行管理的工具和應用程序接口,而且一些常用的虛擬機管理工具(virsh、virt-install、virt-manager等)和雲計算

自動化運維工具ansible簡單介紹

id_rsa sha snippet penssh 取消 hat 圖片 超時時間 Opens 一.Ansible介紹Ansible 簡單的說是一個配置管理系統(configuration management system)。你只需要可以使用 ssh 訪問你的服務器或設備就

Apache JMeter工具的基本介紹與安裝

一、Apache JMeter簡介   JMeter是一個純粹的Java編寫的應用程式,它主要是用來進行負載和效能測試。原先它是為Web/HTTP測試而設計的。設計JMeter最初始的目的是用來測試Web Application但是現在已經擴充套件了很多功能。JMeter通常被用來對一些靜態

JMeter學習筆記2-圖形界面簡單介紹

就是 workbench pla 選擇 sta 時間 jmeter 原創 變化   前面文章介紹了如何打開JMeter,這篇介紹,圖形化界面簡單認識。由於JMeter是英文界面,而且是剛剛接觸這個軟件,我會盡量多截圖和標記來描述功能。打開JMeter,很多操作,很多英文單詞

Sqoop資料遷移工具簡單介紹和安裝(一)

1、概述  sqoop 是 apache 旗下一款“Hadoop 和關係資料庫伺服器之間傳送資料”的工具。   匯入資料:MySQL,Oracle 匯入資料到 Hadoop 的 HDFS、HIVE、HBASE 等資料儲存系統 匯出資料:從 Hadoop 的檔案系統中匯出資料到

簡單介紹java原生的定時任務,和Jsoup工具

java原生定時任務建立,以及簡單jsoup的使用 package com.bzu.csh; import java.io.IOException; import java.util.Timer; import java.util.TimerTask; im