Jmeter性能測試-分布式壓力測試


作為一個測試行業的菜鳥,由於投身於一個小公司,包攬所有的測試。剛開始的功能測試到接口測試,穩定性測試,兼容性測試等,一般由於是小項目所以對於性能有所忽略,也沒怎么涉及,公司接了個大項目,后期對於性能上有一定的要求,對於並發用戶要求也是比較高的,所以利用項目之間的空隙自學下。

1.java運行環境

說是自學,但是對服務器這些的概念還是很模糊的我,還是得先了解下軟件的運行環境,服務器等概念才好下手。

由於正式的環境客戶是購買了阿里雲的服務器,所以了解了下簡單的流程

購買域名--購買服務器(選擇操作系統Linux或者windows)--遠程桌面連接(本機下載putty等軟件)--配置java運行環境在雲服務器上--下載tomcat在服務器上--利用遠程軟件上傳源碼到服務器上Apache

webapps的文件夾下--打開tomacat文件夾,修改配置文件,添加購買的域名--備案,域名解析,這樣就可以通過域名訪問網站了。

tomcat是一個服務器的軟件,所以服務器的性能測試也就是tomcat的性能測試

2.jmeter服務器分布式性能測試

將jmetter的服務端安裝在服務器上--確定並發數從而確定並發的電腦數--在需要分布式的代理計算機上配置環境--安裝jdk,java,jmeter等軟件--在主控制機上打開jmeter.properties的軟件搜索remote,添加遠程

計算機的ip地址用逗號隔開--在服務器上打開jmeter服務端的文件jmeter-server.bat--在控制機上打開jmeter,添加線程(設置線程數即並發數),http請求,監視器等--點擊運行中的遠程啟動全部。完成分布式壓力測試

在性能分析上需要結合網絡,數據庫,代碼,服務器等方面綜合分析性能瓶頸

服務器性能測試,添加服務器指標:

在服務器端打開jmeter測試連接成功后,監控服務器的性能指標,添加監視器:jp@gc-PerMon Metrics Collector,添加監控的性能指標cpu,memeroy等

 

 

3.布式測試注意點

單台電腦1000或者5000以上的並發無法支撐這么大的並發數,需要分布式, 隨着並發的增大,tps不會增長,即出現瓶頸(排除服務器瓶頸及其他),可能是本測試機找不住了,則要分布式

進行分布式平台測試的時候,要最好注意以下幾點:

1. 防火牆應該關閉

2. 所有客戶端應該都在同一個子網中

3. 確保jmeter可以訪問服務器

4. 確保各個jmeter,java版本一致,不同版本可能會存在協同問題

5.如果測試用到了外部數據文件,那么請注意這些文件不會被JMeter客戶端分發,因此測試人員需要確保每台執行機上都保存了這些數據文件(其所在目 錄也必須正確)

(1)jmeter-properties:remote_hosts添加:遠程主機ip地址和端口號,以逗號分隔開

(2)設置后,主機的jmeter重啟,點擊【運行】>【遠程啟動】

出現的問題:運行后,遠程的響應數據為空

原因:測試的文件以及數據的路徑不一致

解決方案:遠程的測試文件需要用到絕對路徑

4.數據庫性能測試

a.JDBC Connection-mysql數據庫驅動配置

http://blog.csdn.net/smj811504083/article/details/70844703

測試計划>線程組>JDBC Connect Configuration,JDBC request,察看結果樹

(1)JDBC Connect Configuration

(2)JDBC request

(3)運行

出現的問題:“Cannot load JDBC driver class 'com.mysql.jdbc.Driver”,是因為缺少JDBC連接MySql的驅動包,因此需要手動添加驅動包。

解決方案:

下載mysql-connector-java壓縮文件:https://dev.mysql.com/downloads/file/?id=472651

解壓后將文件放在jmeter的lib文件夾下

在測試計划中添加jar文件:

 b.Bean Shell Sample

注意:

(1)寫完的每個語句后面必須加上分號;

(2)csvread取值方式以線程為主,循環取值

 

也可以參考:傳送門

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM