近來筆者寫了翻牌抽獎遊戲
爲了測試中獎機率 筆者需要將抽獎接口跑大約2W+的中獎記錄
php 使用for 循環也可以跑 但是效率卻不敢恭維
這個時候就需要我們使用工具來跑接口數據 (需要安裝1、java.jdk 2、jemete)
jemete 簡介:
Apache JMeter是Apache組織開發的基於Java的壓力測試工具。用於對軟件做壓力測試,它最初被設計用於Web應用測試,但後來擴展到其他測試領域。 它可以用於測試靜態和動態資源,例如靜態文件、Java 小服務程序、CGI 腳本、Java 對象、數據庫、FTP 服務器, 等等。JMeter 可以用於對服務器、網絡或對象模擬巨大的負載,來自不同壓力類別下測試它們的強度和分析整體性能。另外,JMeter能夠對應用程序做功能/迴歸測試,通過創建帶有斷言的腳本來驗證你的程序返回了你期望的結果。爲了最大限度的靈活性,JMeter允許使用正則表達式創建斷言。
Apache jmeter 可以用於對靜態的和動態的資源(文件,Servlet,Perl腳本,java 對象,數據庫和查詢,FTP服務器等等)的性能進行測試。它可以用於對服務器、網絡或對象模擬繁重的負載來測試它們的強度或分析不同壓力類型下的整體性能。你可以使用它做性能的圖形分析或在大併發負載測試你的服務器/腳本/對象。
1.下載jdk和jmeter
可以去jdk官網下載:
http://www.oracle.com/technetwork/java/javase/downloads/jdk6-downloads-1637591.html
點擊
不要下成linux版本的了哦.
jmeter下載的地址是:
http://jmeter.apache.org/download_jmeter.cgi
java jdk 安裝
2.安裝jdk
可以看到我的安裝路徑是C:\Program Files\Java\jdk1.6.0_34,沒什麼好說的一直next就好了.
然後給jdk設置環境變量,右鍵我的電腦-屬性-高級-環境變量.
在用戶變量中設置:
新建變量名"JAVA_HOME",變量值爲:安裝jdk的目錄,我的是C:\Program Files\Java\jdk1.6.0_34.
】
再新建變量名"CLASSPATH",變量值爲:C:\Program Files\Java\jdk1.6.0_34\lib\dt.jar;C:\Program Files\Java\jdk1.6.0_34\lib\tools.jar;C:\Program Files\Java\jdk1.6.0_34\bin
筆者jdk只配置到了這裏後面也沒有配置 仍然可以使用!!!
最後在系統變量"Path"的變量值加上%JAVA_HOME%/bin
Jmeter安裝詳解
jmeter環境變量
Jmeter安裝簡單,只需要解壓jmeter文件包解壓到D盤(任意地方,最好不要帶中文路徑)位置,然後配置環境變量(注:jdk環境變量也要配置,這裏使用的是jmeter2.11):
Jmeter運行
打開jmeter包下的bin目錄,然後雙擊jmeter.bat,打開Jmeter界面,右擊-->添加-->Thread-->線程組,選擇如下圖所示:
線程組屬性詳解:
線程數:線程數量,也就是Lr的虛擬用戶數
Ramp-Up Period:用於告知JMeter 要在多長時間內建立全部的線程。默認值是1。假設ramp-up period 設置成T 秒, 全部線程數設置成N個, JMeter 將每隔T/N秒建立一個線程。
循環次數 :運行測試的次數。
然後添加Sample(右擊線程組-->添加-->Sampler-->HTTP請求),添加查看結果樹(右擊線程組-->添加-->監聽器-->查看結果樹),查看結果樹的作用是查看運行結果是成功或失敗;
HTTP請求的如下設置:
然後點擊運行,並在查看結果樹上,查看運行結果(包括取樣器結果、請求和響應),如圖,是取樣器結果:
這樣,我們就能針對相關的B/S架構的應用做性能測試了,而且Jmeter的功能也很強大,一點也不弱於LR,可以持續關注。
跑庫 結果:
大約1000條數據 跑了3分鐘 只用了一個線程去跑的 沒秒3-4條 (也許筆者接口邏輯渣渣導致插入過程慢 0.0 ........)
其他功能有興趣的話可以繼續研究 很不錯的一款開源工具!!!!