目錄
創(chuàng)新互聯(lián)主要從事成都網站建設、網站建設、網頁設計、企業(yè)做網站、公司建網站等業(yè)務。立足成都服務清流,10多年網站建設經驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:18980820575一、JMeter簡介
二、JMeter功能介紹
三、JMeter腳本
四、關于JMeter小提示
一、JMeter簡介
1.定義
JMeter是Apache組織開發(fā)的基于Java的壓力測試工具。用于對軟件做壓力測試,它最初被設計用于Web應用測試,但后來擴展到其他測試領域。
1)它可以用于測試靜態(tài)和動態(tài)資源,例如靜態(tài)文件、Java 小服務程序、CGI 腳本、Java 對象、DB、FTP 服務器, 等等。
2)JMeter 可以用于對服務器、網絡或對象模擬巨大的負載,來自不同壓力類別下測試它們的強度和分析整體性能。
3)JMeter能夠對應用程序做功能/回歸測試,通過創(chuàng)建帶有斷言的腳本來驗證程序是否返回了預期結果。為了大限度的靈活性,JMeter允許使用正則表達式創(chuàng)建斷言。
4)JMeter支持的協(xié)議有:Web(Http、Https)、SOAP、FTPd、JDBC、郵件、MongoDB、TCP、原生命令或Shell腳本
2.JMeter的優(yōu)勢
1)可對任何DB進行壓力測試(通過JDBC)
2)純Java,可移植性強
3)輕量組件支持包(預編譯的JAR使用javax.swing.*)
4)多線程(多個線程并發(fā)或通過單獨的線程組對不同功能同時操作)
5)計時精確
6)緩存和離線分析,回放測試結果
7)完全開源,可對JMeter進行二次開發(fā),增加業(yè)務對應所需的插件
3.JMeter不足
1)錄制功能操作不方便。需要第三方工具Badboy或使用Browser代理錄制
2)入門困難,同時網上學習資源較少
3)報表類型少,場景設計比LR復雜
4)不支持進程模式
5)大并發(fā)時的結果不準確。
二、JMeter功能介紹
1.測試計劃
啟動JMeter后,默認打開了一個測試計劃,一個完整的測試計劃劃包含一個或多個線程組、邏輯控制、取樣發(fā)生控制、監(jiān)聽器、定時器、斷言和配置元件。
2.線程
相當于LR中的VUser,每個JMeter測試計劃的第一步就是添加線程組。在線程組里設置并發(fā)用戶量、并發(fā)時間或并發(fā)次數(shù)、線程的啟動頻率。
JMeter的線程組有三種類型:
setup thread group: setup ,進行測試前的準備初始化工作,即init
teardown thread group:teardown,測試結束后的垃圾回收等清理工作,即end
thread group:最常用的線程組,相當于Action .一個線程相當于一個LR中的Vuser,這些線程在腳本運行過程中無法改變。
3.測試片段(Test Fragment)
測試片段元素像是控制器上的一種特殊的線程組,在測試樹上與線程組同級。但它不被執(zhí)行,除非引用 。
4.取樣器Sampler
性能測試中向服務器發(fā)送請求并等待響應時間的最小單元,每個取樣器有不同的屬性可以編輯。
5.邏輯控制器
可自定義JMeter發(fā)送請求的行為邏輯 ,與Sampler結合使用可以模擬復雜的請求序列。常用的邏輯控制器有:IF Controller、While Controller、Runtime Controller、事務控制器、隨 機控制器、交替控制器、吞吐量控制器、模塊控制器等。
6.監(jiān)聽器
對JMeter測試結果進行收集處理并進行可視化展現(xiàn)出的一系列元件,包括發(fā)送的請求數(shù)據、返回的結果數(shù)據、響應時間的統(tǒng)計、吞吐量、錯誤率、返回結果狀態(tài)等。常見的監(jiān)聽器有:圖 形結果、查看結果樹、用表格查看結果、聚合報告等。
7.配置元件
維護Sampler需要的配置信息,并根據實際需要修改請求內容 。一般配置元件放在請求開始前。
8.定時器
即思考時間。一來為了真實地模擬用戶并發(fā)行為,二來控制每個線程間的請求間隔時間以減少服務器壓力。
9.斷言
即檢查點。壓力測試前提是功能正確。常用的斷言有:響應斷言、XML斷言、HTML斷言、XPath斷言。
10.前置處理器
用來修改請求的設置。eg.Http URL重寫修復符可實現(xiàn)URL重寫,當RUL中有sessionID一類的session信息時,可通過該處理器填充發(fā)出請求的實際sessionID
11.后置處理器
即關聯(lián)。用于對Sampler發(fā)出請求后得到的服務器響應數(shù)據進行處理。一般用于提取響應中的特定數(shù)據,如用后置處理器中的正則表達式提取器對服務器返回的特定數(shù)據進行關聯(lián)操作。