標籤:
Jmeter的錄製回放功能是現將你對要測試的項目進行訪問的記錄進行錄製,然後虛擬出多個使用者對記錄進行回放,從而達到壓力測試的目的。
錄製是通過Proxy 伺服器進行錄製。
一、
http://labs.xiaonei.com/apache-mirror/jakarta/jmeter/binaries/jakarta-jmeter-2.3.2.zip
二、JMeter 的安裝非常簡單,從官方網站上下載,解壓之後即可使用。運行命令在%JMETER_HOME%/bin 下,對於 Windows 使用者來說,命令是 jmeter.bat。
三、錄製。
1)建立Proxy 伺服器。
設定連接埠[8080]。
Regex填寫排除模式(選填)。
i. .* - all
ii. .*.png – png images
iii. .*.gif – gif images
iv. .*.jpg – jpeg images
v. .*.php
vi. .*.jsp
vii. .*.html
viii. .*.htm
ix. .*.js
2)瀏覽器設定上這個Proxy 伺服器
Internet選項–串連—>區域網路設定 localhost:8080
3)Proxy 伺服器建立好了,就可以開始建立線程組
在右邊的視窗中設定線程數(相當於虛擬使用者數)為50,Ramp-Up Period(in seconds,間隔時間,設為0標示並發訪問)為0,,迴圈框中輸入2。以上設定表示共有50個虛擬使用者,並發訪問,迭代2次
4)為線程組添加錄製控制器
5)啟動Proxy 伺服器。
啟動Proxy 伺服器,這樣在設定好代理的瀏覽器中訪問的記錄就會被記錄器記錄下來,並在記錄器下方顯示,可以查看訪問的路徑、參數等。
四、回放測試和結果查詢
為線程組添加一個彙總報告,查看結果
取消ie代理,停止代理。
運行啟動 即可在彙總報告中看到壓力測試的資料。
Label:每個 JMeter 的 element(例如 HTTP Request)都有一個 Name 屬性,這裡顯示的就是 Name 屬性的值
#Samples:表示你這次測試中一共發出了多少個請求,如果類比10個使用者,每個使用者迭代10次,那麼這裡顯示100
Average:平均回應時間——預設情況下是單個 Request 的平均回應時間,當使用了 Transaction Controller 時,也可以以Transaction 為單位顯示平均回應時間
Median:中位元,也就是 50% 使用者的回應時間
90% Line:90% 使用者的回應時間
Min:最小回應時間
Max:最大回應時間
Error%:本次測試中出現錯誤的請求的數量/請求的總數
Throughput:輸送量——預設情況下表示每秒完成的請求數(Request per Second),當使用了 Transaction Controller 時,也可以表示類似 LoadRunner 的 Transaction per Second 數
KB/Sec:每秒從伺服器端接收到的資料量,相當於LoadRunner中的Throughput/Sec
添加Proxy 伺服器後出現問題:串連到localhost 提示:位於 XDB 的伺服器 localhost 要求使用者名稱和密碼,出現此問題的原因是由於安裝oralce造成的。Oracle 9i建立資料庫時預設包含了XDB特性。一旦啟動了資料庫和Listener,Oracle XDB啟動http服務。XDB的http服務就佔用8080連接埠,剛好和JBoss、Tomcat等預設連接埠衝突,Oracle XDB的連接埠設定不在設定檔中,而是在資料庫裡。這就是主要原因,當然還有可能是其它的原因。
解決方案如下:
1,開啟services.msc,將OralceServiceYourOracleSid伺服器關閉,先完成測試,當需要使用oracle時再開啟此服務。
2,修改XDB伺服器的連接埠號碼同樣可以達到目的,步驟如下
禁用Oracle的XDB服務的方法很簡單,去掉相應的資料庫的初始化參數即可:
編輯$ORACLE_HOME/dbs/initSID.ora檔案,去除如下行:
dispatchers=’(PROTOCOL=TCP) (SERVICE=XDB)’
重啟資料庫
shutdown immediate;
create spfile from pfile;
startup;
修改XDB服務連接埠:
XDB的http服務就佔用8080連接埠,剛好和JBoss、Tomcat等預設連接埠衝突,Oracle XDB的連接埠設定不在設定檔中,而是在資料庫裡。如下修改XDB的http和ftp服務連接埠:
使用sys登入sqlplus,利用dbms_xdb修改連接埠設定
SQL> — Change the HTTP/WEBDAV port from 8080 to 8081
SQL> call dbms_xdb.cfg_update(updateXML(
2 dbms_xdb.cfg_get()
3 , ‘/xdbconfig/sysconfig/protocolconfig/httpconfig/http-port/text()’
4 , 8081))
5 /
Call completed.
SQL> — Change the FTP port from 2100 to 2111
SQL> call dbms_xdb.cfg_update(updateXML(
2 dbms_xdb.cfg_get()
3 , ‘/xdbconfig/sysconfig/protocolconfig/ftpconfig/ftp-port/text()’
4 , 2111))
5 /
Call completed.
SQL> COMMIT;
Commit complete.
SQL> EXEC dbms_xdb.cfg_refresh;
PL/SQL procedure successfully completed.
【轉】Jmeter項目測試