作為一個測試行業的菜鳥,由于投身于一個小公司,包攬所有的測試。剛開始的功能測試到接口測試,穩定性測試,相容性測試等,一般由于是小項目是以對于性能有所忽略,也沒怎麼涉及,公司接了個大項目,後期對于性能上有一定的要求,對于并發使用者要求也是比較高的,是以利用項目之間的空隙自學下。
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資料庫驅動配置
測試計劃>線程組>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取值方式以線程為主,循環取值
也可以參考:傳送門
每天一點點,感受自己存在的意義。