小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

jmeter入門(mén)到精通

 福兮007 2023-05-04 發(fā)布于上海

目錄

一、jmeter 安裝

二、jmeter 介紹

1、jmeter是什么?

2、jmeter 用來(lái)做什么?

3、優(yōu)點(diǎn)

4、缺點(diǎn)

5、jmeter 目錄介紹

①_bin 目錄介紹

② docs 目錄 — — 接口文檔目錄

③ extras目錄 — — 擴(kuò)展插件目錄

④ lib 目錄 — —  所用到的插件目錄

⑤ licenses 目錄 — — jmeter 證書(shū)目錄

⑥ printable_docs目錄

三、jmeter 基本使用&元件

1、jmeter 入門(mén)腳本

jmeter測(cè)試計(jì)劃要素:

 2、測(cè)試計(jì)劃元件

3、元件的作用域

(1)原則:

(2)執(zhí)行順序

4、jmeter 第一個(gè)案例

5、jmeter 運(yùn)行原理

6、jmeter配置文件修改

(1)修改中文亂碼問(wèn)題

(2)修改默認(rèn)語(yǔ)言

四、jmeter核心知識(shí)

1、發(fā)送http請(qǐng)求

1)相關(guān)配置元件

2)http請(qǐng)求配置

2、jmeter 參數(shù)化***

1)參數(shù)化的概念

3)用戶(hù)參數(shù)

5)總結(jié)參數(shù)化

3、jmeter 斷言

1)常用斷言

2)響應(yīng)斷言

 3)Json 斷言

? 4)斷言持續(xù)時(shí)間

 4、jmeter 關(guān)聯(lián)

1)jmeter 常用的關(guān)聯(lián)方法

 2)正則表達(dá)式提取器

 3)xpath 提取器

 4)JSON提取器

5)jmeter 的屬性 -- 全局變量

5、 jmeter錄制腳本

1)使用badboy錄制

2)使用jmeter自身代理錄制移動(dòng)端

6、jmeter連接數(shù)據(jù)庫(kù) -- 以MySQL為例

1)使用數(shù)據(jù)庫(kù)步驟

① 創(chuàng)建測(cè)試計(jì)劃

② 創(chuàng)建線程組

③ 引入數(shù)據(jù)庫(kù)驅(qū)動(dòng)jar 包

④ 配置 JDBC Connectionn Configuration 

⑤ 連接測(cè)試(JDBC Request)

7、邏輯控制器

1)如果(if)控制器

2)循環(huán)控制器

3)ForEach 控制器

8、定時(shí)器

1)同步定時(shí)器

2)常數(shù)吞吐量定時(shí)器 constant throughput timer

3)固定定時(shí)器***最常用**


一、jmeter 安裝

看文章:

jmeter 安裝與配置_墨瑤_165的博客-CSDN博客

解釋?zhuān)翰灰褂肎UI模式進(jìn)行壓力測(cè)試,GUI模式僅僅用于創(chuàng)建和調(diào)試壓力測(cè)試腳本的。

二、jmeter 介紹

1、jmeter是什么?

jmeter:是Apche公司使用Java平臺(tái)開(kāi)發(fā)的一款測(cè)試工具。

2、jmeter 用來(lái)做什么?

  • 接口測(cè)試
  • 性能測(cè)試
  • 壓力測(cè)試(優(yōu)勢(shì))
  • 數(shù)據(jù)庫(kù)測(cè)試
  • Java程序測(cè)試 (因?yàn)楸旧砭褪荍ava語(yǔ)言編寫(xiě)的)

3、優(yōu)點(diǎn)

  • 開(kāi)源免費(fèi)
  • 支持多協(xié)議 (http,tcp...)
  • 輕量級(jí)
  • 功能強(qiáng)大

4、缺點(diǎn)

無(wú)法驗(yàn)證JS程序,也無(wú)法驗(yàn)證頁(yè)面UI,所以必須要和 selenium 配合來(lái)完成web2.0應(yīng)用的測(cè)試

5、jmeter 目錄介紹

①_bin 目錄介紹

examples目錄中有CSV樣例
jmeter.batwindows 的啟動(dòng)文件
jmeter.shLinux 的啟動(dòng)文件
jmeter.logjmeter 運(yùn)行日志文件
jmeter.properties系統(tǒng)配置文件
jmeter-server.batwindows 分布式測(cè)試要用到的服務(wù)器配置
jmeter-serrverLinux 分布式測(cè)試要用到的服務(wù)器配置

jmeter.properties

  • 打開(kāi):右擊 -->
  • 修改后需要重啟 jmeter 使用

https=http+ssl

② docs 目錄 — — 接口文檔目錄

例如:docs\api\index.html 可打開(kāi)網(wǎng)頁(yè)查看

③ extras目錄 — — 擴(kuò)展插件目錄

提供了對(duì) ant 的支持,可以使用 ant 實(shí)現(xiàn)自動(dòng)化測(cè)試。例如批量腳本執(zhí)行,產(chǎn)生html格式的報(bào)表

測(cè)試運(yùn)行時(shí),可以把測(cè)試數(shù)據(jù)記錄下來(lái),jmeter會(huì)自動(dòng)生成一個(gè) .jtl 文件,將該文件放在extras目錄下,運(yùn)行“ant-Dtest=文件名 report”,就可以生成測(cè)試統(tǒng)計(jì)報(bào)表。

④ lib 目錄 — —  所用到的插件目錄

⑤ licenses 目錄 — — jmeter 證書(shū)目錄

⑥ printable_docs目錄

(網(wǎng)頁(yè)可以翻譯看)

三、jmeter 基本使用&元件

1、jmeter 入門(mén)腳本

  • ①添加測(cè)試計(jì)劃 (當(dāng)打開(kāi)jmeter默認(rèn)有一個(gè)測(cè)試計(jì)劃)
  • ②添加線程組 (右擊測(cè)試計(jì)劃-->添加-->線程-->線程組)
  • ③添加http請(qǐng)求 (右擊線程組-->取樣器-->http請(qǐng)求)
  • ④配置http請(qǐng)求

jmeter測(cè)試計(jì)劃要素:

  • 測(cè)試計(jì)劃(項(xiàng)目名稱(chēng))
  • 測(cè)試計(jì)劃中至少有一個(gè)線程組
  • 線程組中至少有一個(gè)取樣器
  • 測(cè)試計(jì)劃中必須有監(jiān)聽(tīng)器

  • ⑤ 添加查看結(jié)果樹(shù)(右擊線程組-->監(jiān)聽(tīng)器-->查看結(jié)果樹(shù))#查看結(jié)果樹(shù)不做任何配置

編輯好腳本后,可以發(fā)送請(qǐng)求

 save后默認(rèn)發(fā)送請(qǐng)求

 2、測(cè)試計(jì)劃元件

 元件與組件的區(qū)別

  • 元件:多個(gè)類(lèi)似功能組件的容器
  • 組件:容器中實(shí)現(xiàn)單獨(dú)的某個(gè)功能

①線程組介紹(不屬于元件哦!放在一起學(xué)習(xí)而已)

② 取樣器(sample)

取樣器是性能測(cè)試中向服務(wù)器發(fā)送請(qǐng)求,記錄響應(yīng)信息,記錄響應(yīng)時(shí)間的最小單位。

jmeter支持不同取樣器(即支持不同協(xié)議的請(qǐng)求)

③ 邏輯控制器(logic controller)

包括兩類(lèi)元件:

  • 一類(lèi)用于控制testplan中sampler節(jié)點(diǎn)發(fā)送請(qǐng)求的邏輯順序的控制器,常用的有 if控制器,Switchcontroller、runtimecontroller、循環(huán)控制器等
  • 另一類(lèi)是用來(lái)組織可控制sampler節(jié)點(diǎn)的,如事務(wù)控制器、吞吐量控制器

④ 配置元件(config element)

用來(lái)提供對(duì)靜態(tài)數(shù)據(jù)的支持

⑤ 定時(shí)器(timer)

在操作之前設(shè)置等待時(shí)間(例如取樣器與取樣器之間,設(shè)置一個(gè)等待時(shí)間)

⑥ 前置處理器(per processors)

用于實(shí)際請(qǐng)求之前對(duì)即將發(fā)出的請(qǐng)求進(jìn)行特殊處理

⑦ 后置處理器(post processors)

用于對(duì)sampler發(fā)出請(qǐng)求后得到的服務(wù)器響應(yīng)進(jìn)行處理

⑧ 斷言(assertions)

用于檢查測(cè)試中得到的響應(yīng)數(shù)據(jù)等是否符合預(yù)期,assertions一般用來(lái)設(shè)置檢查點(diǎn),用以保證性能測(cè)試過(guò)程中的數(shù)據(jù)交互與預(yù)期是否一致

⑨ 監(jiān)聽(tīng)器

對(duì)測(cè)試結(jié)果進(jìn)行處理和可視化展示的一系列組件

3、元件的作用域

靠測(cè)試計(jì)劃中元件樹(shù)形結(jié)構(gòu)的父子關(guān)系來(lái)確認(rèn)

(1)原則:

取樣器:以取樣器為核心,取樣器沒(méi)有作用域

邏輯控制器:只對(duì)子節(jié)點(diǎn)的取樣器和邏輯控制器起作用

其他元件

  • 如果父節(jié)點(diǎn)是取樣器,則只對(duì)其父節(jié)點(diǎn)起作用
  • 如果父節(jié)點(diǎn)不是取樣器,則該作用域是其父節(jié)點(diǎn)下的其他所有后代節(jié)點(diǎn)(子節(jié)點(diǎn),子節(jié)點(diǎn)的子節(jié)點(diǎn))

(2)執(zhí)行順序

同一作用域下不同元件執(zhí)行順序

  • 配置元件 -- 前置處理器 -- 定時(shí)器 -- 取樣器 -- 后置處理器 -- 斷言 -- 監(jiān)聽(tīng)器

同一作用域下相同元件的執(zhí)行順序

  • 從上到下依次執(zhí)行

案例:執(zhí)行順序案例

定時(shí)器1 -- 請(qǐng)求1 -- 定時(shí)器1 -- 定時(shí)器2 -- 請(qǐng)求2 -- 定時(shí)器1 -- 定時(shí)器3 -- 請(qǐng)求3

解析:定時(shí)器1 的父節(jié)點(diǎn)不是取樣器,所以對(duì)父節(jié)點(diǎn)下的所有后代節(jié)點(diǎn)都起作用

4、jmeter 第一個(gè)案例

需求:使用 jmeter 訪問(wèn)百度接口,并查看請(qǐng)求和響應(yīng)信息

步驟:

  • 添加線程組
  • 添加 HTTP 請(qǐng)求 并 配置
  • 添加查看結(jié)果樹(shù)

5、jmeter 運(yùn)行原理

1、在 jmeter 中是以線程的方式運(yùn)行的

問(wèn):為什么以線程方式運(yùn)行而不是進(jìn)程?
        因?yàn)?jmeter 是運(yùn)行在jvm虛擬機(jī)上的,每個(gè)進(jìn)程的開(kāi)銷(xiāo)比較大,如果以進(jìn)程的方式來(lái)運(yùn)行的話(huà),每臺(tái)負(fù)載機(jī)上的進(jìn)程數(shù)量就不會(huì)允許太多,當(dāng)我們需要大量并發(fā)時(shí)就需要大量的負(fù)載機(jī),這顯然是不經(jīng)濟(jì)的,再者Java也是支持多線程的,所以 jmeter 選擇了以線程的方式來(lái)運(yùn)行。

2、jmeter通過(guò)線程組來(lái)驅(qū)動(dòng)多個(gè)線程運(yùn)行測(cè)試腳本,對(duì)被測(cè)服務(wù)器發(fā)起負(fù)載,每個(gè)負(fù)載機(jī)上都可以運(yùn)行多個(gè)線程組。

jmeter運(yùn)行場(chǎng)景:

  • GUI模式(界面模式)(主要用來(lái)編寫(xiě)和調(diào)試jmeter測(cè)試腳本)
  • 命令行模式(對(duì)負(fù)載機(jī)的資源消耗會(huì)更小)(用來(lái)實(shí)現(xiàn)高并發(fā)和壓力測(cè)試)

在資源有限的情況下,都是用命令行模式來(lái)執(zhí)行jmeter腳本的,而頁(yè)面模式是用來(lái)前期創(chuàng)建腳本或者調(diào)試腳本的

負(fù)載機(jī):執(zhí)行jmeter腳本的電腦

6、jmeter配置文件修改

bin --> jmeter.properties -->右擊打開(kāi)

(1)修改中文亂碼問(wèn)題

找下面這句話(huà)(查找快捷鍵:ctrl+f)

  1. sampleresult.default.encoding=ISO-8859-1
  2. #ISO-8859-1是默認(rèn)值

將參數(shù)修改為

sampleresult.default.encoding =utf-8

去掉這行代碼前面的#號(hào)

(2)修改默認(rèn)語(yǔ)言

 修改保存完后,重啟 jmeter 就生效了

四、jmeter核心知識(shí)

1、發(fā)送http請(qǐng)求

(學(xué)習(xí) jmeter取樣器 以 http請(qǐng)求 為例)

作用:向服務(wù)器發(fā)送http/https請(qǐng)求

1)相關(guān)配置元件

① HTTP管理器

 http請(qǐng)求 與 配置元件配套使用

② http消息頭管理器(http請(qǐng)求頭)

主要使用Content-Type參數(shù)(指請(qǐng)求參數(shù)的類(lèi)型)

在jmeter中,發(fā)送HTTP的post請(qǐng)求時(shí),需要添加http消息頭管理器

 !漢字是??時(shí),在內(nèi)容編碼中加 utf-8

③ http請(qǐng)求默認(rèn)值

作用:將同一線程組下所有http請(qǐng)求的協(xié)議和服務(wù)器域名統(tǒng)一管理

(如果http請(qǐng)求中自己填寫(xiě)了http協(xié)議和服務(wù)器域名,當(dāng)發(fā)送請(qǐng)求時(shí)使用本身的協(xié)議和域名)

2)http請(qǐng)求配置

  • http協(xié)議默認(rèn)端口號(hào):80
  • httpd默認(rèn)端口號(hào):443

請(qǐng)求地址:http://127.0.0.1:8000/api/departments/

練習(xí):編寫(xiě) jmeter 腳本,訪問(wèn)百度 (URL=http://www.baidu.com/S  參數(shù):wd=test(form表單)

  • 案例1:GET請(qǐng)求,路徑傳遞參數(shù)
  • 案例2:GET請(qǐng)求,參數(shù)列表傳遞參數(shù)
  • 案例3:POST請(qǐng)求,請(qǐng)求體數(shù)據(jù)傳輸參數(shù)
  • 案例4:POST請(qǐng)求,參數(shù)列表傳輸參數(shù)

2、jmeter 參數(shù)化***

1)參數(shù)化的概念

什么是參數(shù)化?

  • 根據(jù)需求動(dòng)態(tài)獲取數(shù)據(jù)并進(jìn)行賦值的過(guò)程

jmeter中參數(shù)的定義?

  • jmeter中參數(shù)化的變量用 ${變量名} 表示

jmeter參數(shù)化常用方式?

  • CSV數(shù)據(jù)控件 (CSV Data Set Config)
  • 用戶(hù)定義的變量(User Defined Variables)
  • 用戶(hù)參數(shù)(User Variables)

2)CSV Data Set Config

一種從外部讀取數(shù)據(jù)功能的組件

適用范圍:需要大量測(cè)試數(shù)據(jù)

實(shí)現(xiàn)步驟

  • 創(chuàng)建測(cè)試計(jì)劃
  • 創(chuàng)建線程組
  • 添加 CSV Data Set Config 組件并配置
  • 添加http請(qǐng)求并配置
  • 添加查看結(jié)果樹(shù)

將表格xlsx格式轉(zhuǎn)換為CSV --> CSV編碼轉(zhuǎn)為UTF-8(notepad)--> CSV數(shù)據(jù)文件設(shè)置 --> http請(qǐng)求設(shè)置 -->設(shè)置線程組線程數(shù)或循環(huán)次數(shù)

配置http請(qǐng)求(引用定義的變量名,格式:${變量名}

3)用戶(hù)參數(shù)

適用于:參數(shù)取值范圍很小

位置:前置處理器 --> 用戶(hù)參數(shù)

使用方式

  • 針對(duì)那個(gè)http請(qǐng)求使用就在哪個(gè)http請(qǐng)求下添加(http --> 添加 --> 前置處理器 --> 用戶(hù)參數(shù))

配置用戶(hù)參數(shù)

  • 添加變量 --> 添加變量名稱(chēng)
  • 添加用戶(hù) --> 添加用戶(hù)名稱(chēng)(一個(gè)用戶(hù)就是一個(gè)測(cè)試數(shù)據(jù))

使用用戶(hù)參數(shù)

  • 在http請(qǐng)求中引用變量(${變量名})
  • 在線程組中設(shè)置線程數(shù);線程數(shù)的值和用戶(hù)數(shù)一致

4)用戶(hù)定義的變量

適用于:定義全局變量

位置:

  • 測(cè)試計(jì)劃頁(yè)面(一般情況下)
  • 配置元件 --> 用戶(hù)定義的變量

步驟:

  • 添加線程組
  • 添加用戶(hù)定義的變量
  • 添加http請(qǐng)求,引用變量${變量名}
  • 添加查看結(jié)果樹(shù)

5)總結(jié)參數(shù)化

①csv數(shù)據(jù)文化配置(配置元件中)

  • 適用于大量的測(cè)試數(shù)據(jù)時(shí)的使用

②用戶(hù)參數(shù)(前置處理器中)

  • 適用于少量測(cè)試數(shù)據(jù)

③用戶(hù)定義的變量(測(cè)試計(jì)劃 / 配置元件中)

  • 定義全局變量

3、jmeter 斷言

(讓 程序自動(dòng)判斷預(yù)期結(jié)果和實(shí)際結(jié)果是否一致)

1)常用斷言

  • 響應(yīng)斷言
  • json斷言
  • 持續(xù)時(shí)間斷言

2)響應(yīng)斷言

作用:對(duì)HTTP請(qǐng)求的任意格式響應(yīng)結(jié)果進(jìn)行斷言

位置:右擊http請(qǐng)求 --> 添加 --> 斷言 --> 響應(yīng)斷言

參數(shù):

案例1:
        請(qǐng)求:https://www.baidu.com
        檢查:響應(yīng)數(shù)據(jù)中是否包含“百度一下,你就知道”

 案例2:校驗(yàn)多個(gè)測(cè)試數(shù)據(jù)

 3)Json 斷言

適用于:HTTP響應(yīng)結(jié)果是 json 格式時(shí),可以使用 json斷言

參數(shù):

 案例:

4)斷言持續(xù)時(shí)間

作用:檢查http請(qǐng)求的響應(yīng)數(shù)據(jù)是否超出要求范圍

參數(shù):

  • 響應(yīng)時(shí)間(毫秒):http請(qǐng)求允許的最大響應(yīng)時(shí)間(1s = 1000ms)。

案例:

 4、jmeter 關(guān)聯(lián)

當(dāng)請(qǐng)求之間有依賴(lài)關(guān)系,比如一個(gè)請(qǐng)求的入?yún)⑹橇硪粋€(gè)請(qǐng)求的返回?cái)?shù)據(jù),這時(shí)候就需要用到關(guān)聯(lián)。

1)jmeter 常用的關(guān)聯(lián)方法

  • 正則表達(dá)式 提取法(針對(duì)任意格式)
  • Xpath 提取法(html格式)
  • JSON 提取法

 

正則表達(dá)式在線測(cè)試

 2)正則表達(dá)式提取器

位置:右擊HTTP請(qǐng)求 --> 添加 --> 后置處理器 --> 正則表達(dá)式提取器

http請(qǐng)求配置中,用 ${變量名} 引用 正則表達(dá)式提取器的引用名稱(chēng)

案例1:獲取傳智播客首頁(yè)的title,并作為參數(shù)傳遞

  • 請(qǐng)求:http://www./,獲取網(wǎng)頁(yè)的title值
  • 請(qǐng)求:http://www.baidu.com/,把獲取到的title作為請(qǐng)求參數(shù)

 案例2:獲取傳智播客首頁(yè)的地址,把第5個(gè)校區(qū)地址作為參數(shù)傳遞(span為地址的校區(qū))

方法1: (地址要先發(fā)送一次請(qǐng)求,在響應(yīng)數(shù)據(jù)中查看)

 方法2:

 案例3:

獲取傳智播客首頁(yè)的地址,把第5個(gè)校區(qū)地址作為參數(shù)傳遞(span為地址/后面帶一、二、三)

 3)xpath 提取器

作用:根據(jù)HTML格式的響應(yīng)結(jié)果數(shù)據(jù)進(jìn)行提取

參數(shù):

 案例1:獲取傳智播客首頁(yè)的title,并作為參數(shù)傳遞

  • 請(qǐng)求:http://www./,獲取網(wǎng)頁(yè)的title值
  • 請(qǐng)求:http://www.baidu.com/,把獲取到的title作為請(qǐng)求參數(shù)

 

 4)JSON提取器

作用:針對(duì)JSON格式的響應(yīng)結(jié)果數(shù)據(jù)進(jìn)行提取

參數(shù):

案例:提取天氣接口中的城市信息,作為參數(shù)在訪問(wèn)百度首頁(yè)時(shí)傳遞

5)jmeter 的屬性 -- 全局變量

提問(wèn):當(dāng)有關(guān)聯(lián)關(guān)系的兩個(gè)請(qǐng)求在不同線程組中,該如何進(jìn)行消息傳遞呢?(定義全局變量)

① jmeter屬性的配置函數(shù):

  • _setProperty函數(shù):將值保存成 jmeter屬性
  • _Property函數(shù):在其他線程組中讀取 jmeter 屬性

② jmeter屬性的執(zhí)行:

  • _setProperty函數(shù) 執(zhí)行(保存jmeter屬性):通過(guò) BeanShell 取樣器
  • _Property函數(shù) 執(zhí)行(讀取屬性):在其他線程組中使用 property函數(shù)

③ 案例

 操作步驟:

  • 添加線程組1
  • 添加http請(qǐng)求-天氣
  • 添加JSON提取器
  • 添加BeanShell取樣器(將JSON提取的值保存成jmeter屬性)
  • 添加線程組2
  • 添加http請(qǐng)求-百度(讀取jmeter屬性)
  • 添加查看結(jié)果樹(shù)

 配置setproperty函數(shù)(選項(xiàng)--函數(shù)助手對(duì)話(huà)框--生成代碼)

 

讓線程組串行執(zhí)行!

5、 jmeter錄制腳本

1)使用badboy錄制

安裝badboy

錄制步驟:

  • 打開(kāi)badboy,默認(rèn)記錄狀態(tài)
  • 地址欄輸入網(wǎng)址,回車(chē) --> 頁(yè)面操作 --> 停止記錄
  • 導(dǎo)出腳本:file --> export jmeter --> 選擇路徑保存

在jmeter中打開(kāi)已有的文件

  • jmeter腳本文件后綴 .jmx
  • 在jmeter中點(diǎn)擊打開(kāi)文件,選擇文件路徑,找到需要的文件打開(kāi)就可以了

2)使用jmeter自身代理錄制移動(dòng)端

① 配置jmeter

  • 打開(kāi)jmeter添加新的測(cè)試計(jì)劃
  • 添加線程組
  • 添加HTTP代理服務(wù)器(右擊測(cè)試計(jì)劃 --> 非測(cè)試元件 --> HTTP代理服務(wù))
  • 配置HTTP代理服務(wù)器(也可以在request filtering 上設(shè)置過(guò)濾條件)

② 配置手機(jī)

設(shè)置 --> wifi --> 配置代理(然后填電腦的IP地址,端口號(hào))

然后就可以錄制移動(dòng)端操作了!

6、jmeter連接數(shù)據(jù)庫(kù) -- 以MySQL為例

需將mysql-connector-java-X.X.X-bin.jar放入到j(luò)meter安裝目錄下的./lib目錄,重啟jmeter

1)使用數(shù)據(jù)庫(kù)步驟

① 創(chuàng)建測(cè)試計(jì)劃

② 創(chuàng)建線程組

  • 添加 JDBC Connectionn Configuration (建立數(shù)據(jù)庫(kù)連接)
  • 添加 JDBC Request (發(fā)送數(shù)據(jù)庫(kù)請(qǐng)求)
  • 添加查看結(jié)果樹(shù)

③ 引入數(shù)據(jù)庫(kù)驅(qū)動(dòng)jar 包

④ 配置 JDBC Connectionn Configuration 

  • database url(數(shù)據(jù)庫(kù)地址):如:jdbc:mysql://數(shù)據(jù)庫(kù)IP地址:數(shù)據(jù)庫(kù)端口/數(shù)據(jù)庫(kù)名稱(chēng)

⑤ 連接測(cè)試(JDBC Request)

  • Variable name of pool...:數(shù)據(jù)庫(kù)連接池的名字(與JDBC Connection Configuration 名字保持一致)
  • Querys:查詢(xún)數(shù)據(jù)庫(kù)語(yǔ)句的SQL語(yǔ)句(末尾不要加;)
  • parameter values:數(shù)據(jù)的參數(shù)值
  • parameter types:數(shù)據(jù)的參數(shù)類(lèi)型
  • variable name:變量名稱(chēng),用于保持SQL語(yǔ)句返回結(jié)果(eg. 變量名稱(chēng))
  • result variable name:創(chuàng)建一個(gè)對(duì)象變量,保存所有返回結(jié)果
  • query timeout:查詢(xún)超時(shí)時(shí)間
  • handle result set:定義如何處理由 callable statements語(yǔ)句返回的結(jié)果

jmeter測(cè)試數(shù)據(jù)庫(kù)服務(wù)--JDBC Request_不進(jìn)則退2020的博客-CSDN博客_jmeter連接數(shù)據(jù)庫(kù)https://blog.csdn.net/qq_32706349/article/details/97539270?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164955943716782094879408%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=164955943716782094879408&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~baidu_landing_v2~default-4-97539270.142%5Ev7%5Epc_search_result_control_group,157%5Ev4%5Econtrol&utm_term=jmeter%E8%BF%9E%E6%8E%A5%E6%95%B0%E6%8D%AE%E5%BA%93&spm=1018.2226.3001.4187

7、邏輯控制器

1)如果(if)控制器

作用:用來(lái)控制它下面測(cè)試元素是否運(yùn)行

位置:右擊線程組 --> 添加 --> 邏輯控制器 --> 如果(if)控制器

參數(shù):

條件:

  • JS語(yǔ)法格式:"${name}"=="itcast" #當(dāng)name取值等于itcast
  • 函數(shù)格式:${_jexl3("${name}"=="itcast")}  #需要勾選下面的復(fù)選框

案例:

兩個(gè)if控制器的條件如下:(其下對(duì)應(yīng)的HTTP請(qǐng)求分別對(duì)應(yīng)www.baidu.com和www.)

  1. "${name}"=="baidu";
  2. "${name}"=="itcast";
  3. #如果勾選了復(fù)選框,則需使用函數(shù)格式:
  4. ${_jexl3("${name}"=="baidu")}
  5. ${_jexl3("${name}"=="itcast")}

2)循環(huán)控制器

① 參數(shù):

案例:循環(huán)訪問(wèn)百度10次

思考:線程組設(shè)置的循環(huán)次數(shù)和循環(huán)控制器循環(huán)次數(shù)有什么區(qū)別?

不同:

  • 線程組設(shè)置的循環(huán)次數(shù)對(duì)線程組下所有HTTP請(qǐng)求都起作用
  • 循環(huán)控制器循環(huán)次數(shù)只對(duì)該控制器下的HTTP請(qǐng)求起作用
當(dāng)線程組循環(huán)次數(shù)為 M,循環(huán)控制器次數(shù)為N時(shí):
  • 循環(huán)控制器下的HTTP請(qǐng)求循環(huán)次數(shù):M*N次
  • 非循環(huán)控制器下的HTTP請(qǐng)求循環(huán)次數(shù):M次

3)ForEach 控制器

作用:一般和用戶(hù)自定義變量或正則表達(dá)式提取器一起使用,讀取返回結(jié)果中一系列相關(guān)的變量

參數(shù):

 案例:

  1.  有一組關(guān)鍵字 [hello,python,測(cè)試],使用用戶(hù)定義的變量存儲(chǔ)
  2.  要依次取出關(guān)鍵字,并在百度搜索,例如:https://www.baidu.com/s?wd=hello

操作步驟:

 案例2:

8、定時(shí)器

1)同步定時(shí)器

阻塞線程(累計(jì)一定的請(qǐng)求),在規(guī)定的時(shí)間內(nèi)達(dá)到一定的線程數(shù)量,這些線程會(huì)在同一時(shí)間點(diǎn)一起釋放,瞬間產(chǎn)生很大的壓力。

參數(shù):

案例1:模擬100個(gè)用戶(hù)同時(shí)訪問(wèn)百度首頁(yè),統(tǒng)計(jì)各種高并發(fā)情況下運(yùn)行情況

步驟:

  • 添加線程組
  • 添加http請(qǐng)求
  • 添加同步定時(shí)器(要設(shè)置時(shí)間且不能太?。。?/li>
  • 添加查看結(jié)果樹(shù)
  • 添加監(jiān)聽(tīng)器 --> 聚合報(bào)告

2)常數(shù)吞吐量定時(shí)器 constant throughput timer

穩(wěn)定性測(cè)試時(shí),需要模擬用戶(hù)真實(shí)的業(yè)務(wù)場(chǎng)景。若真實(shí)業(yè)務(wù)場(chǎng)景QPS為20,如何精確模擬?

作用:讓jmeter按指定的吞吐量(QPS)執(zhí)行,以每分鐘為單位。

參數(shù):

案例:服務(wù)器的QPS要求:20QPS (20 /s)
  • 案例1 :一個(gè)用戶(hù)訪問(wèn)百度首頁(yè),持續(xù)一段時(shí)間,統(tǒng)計(jì)運(yùn)行情況
  • 案例2:兩個(gè)用戶(hù)訪問(wèn)百度首頁(yè),持續(xù)一段時(shí)間,統(tǒng)計(jì)運(yùn)行情況。

3)固定定時(shí)器***最常用**

案例:IHRM系統(tǒng)登錄錯(cuò)誤3次后,鎖定1分鐘,1分鐘后重新輸入正確的用戶(hù)名密碼登錄成功
 打開(kāi)網(wǎng)頁(yè)控制臺(tái),操作查看數(shù)據(jù)填寫(xiě)請(qǐng)求

 

 配置http請(qǐng)求

 在http請(qǐng)求4下面添加固定定時(shí)器,并配置等待時(shí)間

執(zhí)行后為什么出現(xiàn)下面結(jié)果呢?

請(qǐng)求的格式是json ,json 格式請(qǐng)求的請(qǐng)求頭類(lèi)型是application/json

所以需要用信息頭管理器修改頭域

 成功!

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多