Jmeter接口測試詳解

今天筆者呢,想給大家聊聊Jmeter接口測試流程詳解,廢話不多說直接進入正題。

一、jmeter簡介

Jmeter是由Apache公司開發的java開源項目,所以想要使用它必須基于java環境才可以;

Jmeter采用多線程,允許通過多個線程并發取樣或通過獨立的線程對不同的功能同時取樣。

二、jmeter安裝

首先需要安裝jdk(最好是最新版的);

其次去官網下載最新的jmeter版本;

然后配置jmeter的環境變量;

最后雙擊jmeter.bat或者在“命令提示符”輸入jmeter,運行jmeter。

具體安裝步驟請自行網上查看

三、設置jmeter的中文界面

進入jmeter的bin目錄,找到“jmeter.properties”文件,打開文件搜索“language”,將“#language=en”改為“language=zh_CN”,保存之后再打開jmeter就永久變為中文環境了。

四、jmeter主要元件

(1)測試計劃:是使用 JMeter 進行測試的起點,它是其它 JMeter測試元件的容器

(2)線程組:代表一定數量的用戶,它可以用來模擬用戶并發發送請求。實際的請求內容在Sampler中定義,它被線程組包含。

(3)配置元件:維護Sampler需要的配置信息,并根據實際的需要修改請求的內容。

(4)前置處理器:負責在請求之前工作,常用來修改請求的設置

(5)定時器:負責定義請求之間的延遲間隔。

(6)取樣器(Sampler):是性能測試中向服務器發送請求,記錄響應信息、響應時間的最小單元,如:HTTP Request Sampler、FTP Request Sample、TCP Request Sample、JDBC Request Sampler等,每一種不同類型的sampler 可以根據設置的參數向服務器發出不同類型的請求。

(7)后置處理器:負責在請求之后工作,常用獲取返回的值。

(8)斷言:用來判斷請求響應的結果是否如用戶所期望的。

(9)監聽器:負責收集測試結果,同時確定結果顯示的方式。

(10)邏輯控制器:可以自定義JMeter發送請求的行為邏輯,它與Sampler結合使用可以模擬復雜的請求序列。

五、Jmeter元件的作用域和執行順序

(1)元件作用域

配置元件:影響其作用范圍內的所有元件。
前置處理器:在其作用范圍內的每一個sampler元件之前執行。
定時器:在其作用范圍內的每一個sampler有效
后置處理器:在其作用范圍內的每一個sampler元件之后執行。
斷言:在其作用范圍內的對每一個sampler元件執行后的結果進行校驗。
監聽器:在其作用范圍內對每一個sampler元件的信息收集并呈現。
總結:從各個元件的層次結構判斷每個元件的作用域。

(2)元件執行順序:

配置元件->前置處理器->定時器->取樣器->后置處理程序->斷言->監聽器

六、jmeter接口測試流程步驟

(1)測試計劃—打開Jmeter,在菜單左側出現 “測試計劃”

?(2)線程組—鼠標單擊“測試計劃”

線程數:即虛擬用戶數。設置多少個線程數也就是設置多少虛擬用戶數

Ramp-Up時間(秒):設置虛擬用戶數全部啟動的時長。如果線程數為20,準備時長為10秒,那么需要10秒鐘啟動20個線程。也就是平均每秒啟動2個線程。

循環次數:每個線程發送請求的個數。如果線程數為20,循環次數為10,那么每個線程發送10次請求。總請求數為20*10=200。如果勾選了“永遠”, 那么所有線程會一直發送請求,直到手動點擊工具欄上的停止按鈕,或者設置的線程時間結束。

(3)HTTP請求—鼠標右鍵單擊“線程組”

HTTP請求的名稱:本屬性用于標識一個取樣器,建議使用一個有意義的名稱。
注釋:對于測試沒有任何作用,僅用戶記錄用戶可讀的注釋信息。
服務器名稱或IP :HTTP請求發送的目標服務器名稱或IP地址。
端口號:目標服務器的端口號,默認值是80。
協議:向目標服務器發送HTTP請求時的協議,可以是HTTP或者是HTTPS ,默認值為http 。
方法:發送HTTP請求的方法,可用方法包括GET、POST、HEAD、PUT、TRACE、OPTIONS、DELETE等。
路徑:目標URL路徑(不包括服務器地址和端口)
內容編碼:內容的編碼方式,常用UTF-8。
自動重定向:如果選中該選項,當發送HTTP請求后得到的響應是302/301時,JMeter 自動重定向到新的頁面。
對Post使用multipart/from-data:當發送POST 請求時,使用multipart/from-data方法發送,默認不選中。
同請求一起發送參數 : 在請求中發送URL參數,對于帶參數的URL ,jmeter提供了一個簡單的對參數化的方法。用戶可以將URL中所有參數設置在本表中,表中的每一行是一個參數值對(對應RUL中的 名稱1=值1)。

(4)添加斷言—響應斷言

(5)添加監聽器—察看結果樹、聚合報告

同時,在這我為大家準備了一份軟件測試視頻教程(含面試、接口、自動化、性能測試等),就在下方,需要的可以直接去觀看。

【2025最新版】字節大牛講的最全最細的自動化測試全套教程!永久白嫖,拿走不謝,全程干貨無廢話!逼自己15天內學完,從軟件測試基礎到項目實戰一套全通關!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/72839.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/72839.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/72839.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

DeepSeek開啟AI辦公新模式,WPS/Office集成DeepSeek-R1本地大模型!

從央視到地方媒體,已有多家媒體機構推出AI主播,最近杭州文化廣播電視集團的《杭州新聞聯播》節目,使用AI主持人進行新聞播報,且做到了0失誤率,可見AI正在逐漸取代部分行業和一些重復性的工作,這一現象引發很…

通過Golang的container/list實現LRU緩存算法

文章目錄 力扣:146. LRU 緩存主要結構 List 和 Element常用方法1. 初始化鏈表2. 插入元素3. 刪除元素4. 遍歷鏈表5. 獲取鏈表長度使用場景注意事項 源代碼閱讀 在 Go 語言中,container/list 包提供了一個雙向鏈表的實現。鏈表是一種常見的數據結構&#…

【大學生體質】智能 AI 旅游推薦平臺(Vue+SpringBoot3)-完整部署教程

智能 AI 旅游推薦平臺開源文檔 項目前端地址 ??項目介紹 智能 AI 旅游推薦平臺(Intelligent AI Travel Recommendation Platform)是一個利用 AI 模型和數據分析為用戶提供個性化旅游路線推薦、景點評分、旅游攻略分享等功能的綜合性系統。該系統融合…

【滲透測試】基于時間的盲注(Time-Based Blind SQL Injection)

發生ERROR日志告警 查看系統日志如下: java.lang.IllegalArgumentException: Illegal character in query at index 203: https://api.weixin.qq.com/sns/jscode2session?access_token90_Vap5zo5UTJS4jbuvneMkyS1LHwHAgrofaX8bnIfW8EHXA71IRZwsqzJam9bo1m3zRcSrb…

redis數據類型以及底層數據結構

redis數據類型以及底層數據結構 String:字符串類型,底層就是動態字符串,使用sds數據結構 Map:有兩種數據結構:1.壓縮列表:當hash結構中存儲的元素個數小于了512個。并且元 …

DeepSeek R1-32B醫療大模型的完整微調實戰分析(全碼版)

DeepSeek R1-32B微調實戰指南 ├── 1. 環境準備 │ ├── 1.1 硬件配置 │ │ ├─ 全參數微調:4*A100 80GB │ │ └─ LoRA微調:單卡24GB │ ├── 1.2 軟件依賴 │ │ ├─ PyTorch 2.1.2+CUDA │ │ └─ Unsloth/ColossalAI │ └── 1.3 模…

window下的docker內使用gpu

Windows 上使用 Docker GPU需要進行一系列的配置和步驟。這是因為 Docker 在 Windows 上的運行環境與 Linux 有所不同,需要借助 WSL 2(Windows Subsystem for Linux 2)和 NVIDIA Container Toolkit 來實現 GPU 的支持。以下是詳細的流程: 一、環境準備 1.系統要求 Window…

Ubuntu 下 nginx-1.24.0 源碼分析 - cycle->modules[i]->type

Nginx 中主要有以下幾種模塊類型 類型 含義 NGX_CORE_MODULE 核心模塊(如進程管理、錯誤日志、配置解析)。 NGX_EVENT_MODULE 事件模塊(如 epoll、kqueue 等 IO 多路復用機制的實現)。 NGX_HTTP_MODULE HTTP 模塊&#xf…

八、排序算法

一些簡單的排序算法 8.1 冒泡排序 void Bubble_sort(int a[] , int len){int i,j,flag,tmp;for(i=0 ; i < len-1 ; i++){flag = 1;for(j=0 ; j < len-1-i ; j++){if(a[j] > a[j+1]){tmp = a[j];a[j] = a[j+1];a[j+1] = tmp;flag = 0;}}if(flag == 1){break;}}…

Sqlserver安全篇之_手工創建TLS用到的pfx證書文件

Sqlserver官方提供的Windows Powershell腳本 https://learn.microsoft.com/zh-cn/sql/database-engine/configure-windows/configure-sql-server-encryption?viewsql-server-ver16 # Define parameters $certificateParams {Type "SSLServerAuthentication"Subje…

npm install -g @vue/cli 方式已經無法創建VUE3項目

采用該方式&#xff0c;啟動VUE3項目&#xff0c;運行命令&#xff0c;出現報錯&#xff1a; npm install -g vue/cli PS D:\> npm install -g vue/cli npm warn deprecated inflight1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lr…

3.8[a]cv

函數核心目標 實現屏幕空間內三角形的光柵化&#xff0c;將三角形覆蓋的像素點顏色填充到幀緩沖區&#xff0c;同時處理深度測試&#xff08;Z-Buffer&#xff09;。這是渲染管線中幾何階段到像素階段的關鍵步驟 包圍盒計算&#xff08;Bounding Box&#xff09;?** ?功能&…

導入 Excel 規則批量修改或刪除 Excel 表格內容

我們前面介紹過按照規則批量修改 Excel 文檔內容的操作&#xff0c;可以對大量的 Excel 文檔按照一定的規則進行統一的修改&#xff0c;可以很好的解決我們批量修改 Excel 文檔內容的需求。但是某些場景下&#xff0c;我們批量修改 Excel 文檔內容的場景比較復雜&#xff0c;比…

SGLang Router:基于緩存感知負載均衡的數據并行路由實踐

SGLang Router&#xff1a;基于緩存感知負載均衡的數據并行路由實踐 一、引言二、安裝與快速啟動三、兩種工作模式對比3.1 協同啟動模式&#xff08;單節點&#xff09;3.2 獨立啟動模式&#xff08;多節點&#xff09; 四、動態擴縮容API4.1 添加Worker節點4.2 移除Worker節點…

在人工智能軟件的幫助下學習編程實例

1 引言 本文記錄在人工智能軟件的幫助下學習一種全新的編程環境的實例&#xff0c;之所以提人工智能軟件而不是單指DeepSeek&#xff0c;一方面DeepSeek太火了&#xff0c;經常服務器繁忙&#xff0c;用本機本地部署的最多運行70b模型&#xff0c;又似乎稍差。另一方面也作為一…

Ubuntu 下 nginx-1.24.0 源碼分析 - ngx_modules

定義在 objs\ngx_modules.c #include <ngx_config.h> #include <ngx_core.h>extern ngx_module_t ngx_core_module; extern ngx_module_t ngx_errlog_module; extern ngx_module_t ngx_conf_module; extern ngx_module_t ngx_openssl_module; extern ngx_modul…

深度學習代碼解讀——自用

代碼來自&#xff1a;GitHub - ChuHan89/WSSS-Tissue 借助了一些人工智能 2_generate_PM.py 功能總結 該代碼用于 生成弱監督語義分割&#xff08;WSSS&#xff09;所需的偽掩碼&#xff08;Pseudo-Masks&#xff09;&#xff0c;是 Stage2 訓練的前置步驟。其核心流程為&a…

Java基礎面試題全集

1. Java語言基礎 1.1 Java是什么&#xff1f; ? Java是一種廣泛使用的編程語言&#xff0c;最初由Sun Microsystems&#xff08;現為Oracle公司的一部分&#xff09;于1995年發布。它是一種面向對象的、基于類的、通用型的編程語言&#xff0c;旨在讓應用程序“編寫一次&…

Selenium遇到Exception自動截圖

# 隨手小記 場景&#xff1a;測試百度&#xff1a; 點擊新聞&#xff0c;跳轉到新的窗口&#xff0c;找到輸入框&#xff0c;輸入“hello,world" 等到輸入框的內容是hello,world, 這里有個錯誤&#xff0c;少了一個] 后來就實現了錯誤截圖的功能&#xff0c;可以參考 …

【神經網絡】python實現神經網絡(一)——數據集獲取

一.概述 在文章【機器學習】一個例子帶你了解神經網絡是什么中&#xff0c;我們大致了解神經網絡的正向信息傳導、反向傳導以及學習過程的大致流程&#xff0c;現在我們正式開始進行代碼的實現&#xff0c;首先我們來實現第一步的運算過程模擬講解&#xff1a;正向傳導。本次代…