JMeter的作用
1.能夠?qū)TTP和FTP服務(wù)器進(jìn)行壓力和性能測試晨缴, 也可以對任何數(shù)據(jù)庫進(jìn)行同樣的測試(通過JDBC)。
2.完全的可移植性和100% 純java春缕。
3.完全 Swing 和輕量組件支持(預(yù)編譯的JAR使用 javax.swing.*)包挎塌。
4.完全多線程 框架允許通過多個線程并發(fā)取樣和 通過單獨的線程組對不同的功能同時取樣。
5.精心的GUI設(shè)計允許快速操作和更精確的計時车酣。
6.緩存和離線分析/回放測試結(jié)果曲稼。
JMeter的高可擴展性
1.可鏈接的取樣器允許無限制的測試能力。
2.各種負(fù)載統(tǒng)計表和可鏈接的計時器可供選擇湖员。
3.數(shù)據(jù)分析和可視化插件提供了很好的可擴展性以及個性化贫悄。
4.具有提供動態(tài)輸入到測試的功能(包括Javascript)。
5.支持腳本編程的取樣器(在1.9.2及以上版本支持BeanShell)娘摔。
在設(shè)計階段窄坦,JMeter能夠充當(dāng)HTTP PROXY(代理)來記錄IE/NETSCAPE的HTTP請求,也可以記錄apache等WebServer的log文件來重現(xiàn)HTTP流量凳寺。當(dāng)這些HTTP客戶端請求被記錄以后鸭津,測試運行時可以方便的設(shè)置重復(fù)次數(shù)和并發(fā)度(線程數(shù))來產(chǎn)生巨大的流量。JMeter還提供可視化組件以及報表工具把量服務(wù)器在不同壓力下的性能展現(xiàn)出來肠缨。
相比其他HTTP測試工具,JMeter最主要的特點在于擴展性強逆趋。JMeter能夠自動掃描其lib/ext子目錄下.jar文件中的插件,并且將其裝載到內(nèi)存晒奕,讓用戶通過不同的菜單調(diào)用闻书。
線程組(多并發(fā)基礎(chǔ))
普通線程組用于封裝測試流程,可設(shè)置多線程,循環(huán)等
setUp Thread Group 預(yù)測試操作,測試前執(zhí)行的定期線程組
-
tearDown Thread Group 執(zhí)行測試后動作,測試結(jié)束后執(zhí)行的定期線程組
線程組
配置元件
參數(shù)化設(shè)置
jdbc連接配置
-
http信息管理
配置元件
Jmeter七大組件簡介
1、取樣器
-
向服務(wù)器發(fā)送請求脑慧,記錄響應(yīng)信息惠窄,記錄響應(yīng)時間的最小單元,JMETER原生支持多種不同的sample漾橙,比如 http請求杆融、FTP請求等,每種不同類型的sampler可以根據(jù)設(shè)置的參數(shù)向服務(wù)器發(fā)出不同類型的請求霜运。
image.png
2脾歇、斷言
-
斷言用于檢查測試中得到的相應(yīng)數(shù)據(jù)等是否符合預(yù)期蒋腮,斷言一般用來設(shè)置檢查點,用以保證性能測試過程中的數(shù)據(jù)交互是否與預(yù)期一致藕各。
斷言
3池摧、邏輯控制器
-
可進(jìn)行子業(yè)務(wù)和分支業(yè)務(wù)封裝,增加判斷條件循環(huán)等
邏輯控制器
4、前置處理器
多用于環(huán)境復(fù)歸
可修改取樣器的內(nèi)容
-
在不同線程使用不同變量值
前置處理器
5激况、后置處理器
- 多用于參數(shù)傳遞
-
提取參數(shù)并輸出日志等
后置處理器
6作彤、定時器
-
加等待時間
定時器
7、監(jiān)聽器
- 生成各種形式的測試報告
-
發(fā)送郵件等
image.png
Jmeter元件執(zhí)行順序
在同一作用域名范圍內(nèi)乌逐,測試計劃中的元件按照以下順序執(zhí)行:
①配置元件
②前置處理程序
③定時器
④取樣器
⑤后置處理程序
⑥斷言
⑦監(jiān)聽器