Jmeter(六):json斷言元件,jmeter參數化實現

🍅?點擊文末小卡片?,免費獲取軟件測試全套資料,資料在手,漲薪更快????

json斷言元件

json斷言元件介紹

json斷言元件與響應斷言元件的功能類型,它只針對響應正文為json數據格 式的內容進行斷言功能。

添加路徑:右擊http請求——斷言——json斷言

如下圖展示:

json斷言元件字段介紹

名稱/注釋:自定義描述性文字

Assert JSON Path exists:斷言jsonpath表達式截取的值是否存在,這里輸 入要檢查字段的jsonpath表達式即可;可參考jmeter(10)中的jsonpath表達式介紹

Addittionally assert value:是否添加斷言值, 添加的斷言值和json返回的字段值 進行比較,等于特定的值。如不勾選,只比對是否返回了該json字段

Match as regular expression:斷言值是否支持正則表達式

Expected Value:添加斷言值

Expect null:預期空值,勾選這項,則會匹配斷言結果為null的情況

Invert assertion:取反,若上述斷言結果為true,勾選此項,則斷言結果為false ;若上述斷言結果為false,勾選此項,則斷言結果為true

jmeter參數化實現

jmeter參數化

在實際的測試工作中,我們經常需要對多組不同的輸入數據,進行同樣的測試操作步驟,以驗證我們的軟件的功能。這種測試方式在業界稱為數據驅動測試, 而在實際測試工作中,測試工具中實現不同數據輸入的過程稱為參數化設置。

jmeter提供多種參數化設置的方式

1、使用 用戶定義的變量元件 實現
2、使用 用戶參數元件 實現
3、使用 函數助手 實現
4、使用 CSV 數據文件設置元件 實現
5、其它方式(數據庫數據、beanshell等)實現

1、使用 用戶定義的變量元件 實現參數化

在實際使用jmeter進行接口測試過程中,我們把一些常用的配置值全部放置到用戶定義的變量元件中,方便統一管理。在需要使用到的其他地方通過 ${變量名} 的語法格式進行引用即可

添加路徑:右擊——配置元件——用戶自定義的變量

在http請求中使用${變量名}引用;如下圖

2、使用 用戶參數元件 實現參數化

用戶參數元件可通過右鍵快捷菜單中選擇 添加-前置處理器-用戶參數進行添 加,與用戶自定義變量不同的是,用戶參數列表中的參數取值可以在測試計劃執 行過程中發生變化。

每次迭代更新一次:如果選中該選項,則參數的值在每個迭代中保持不變,在新 的迭代開始時取下一個值。如果取消該選項,則參數值在每個在其作用域內的 sampler發出請求時取下一個可用值。

建議在參數的取值范圍很小,使用用戶參數比較合適

添加路徑:右擊——前置處理器——用戶參數

在名稱中輸入一個變量名,用戶后面輸入不同的值;在http請求中引用變量名

在線程組中,修改線程數;如下圖

執行效果如下:

3、使用 函數助手 實現參數化

打開路徑:在工具欄——函數助手對話框;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

快捷圖標展示;如下圖

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

函數助手中提供了很多可以進行參數化的函數,常用典型的幾個函數。

jmeter官網詳細文檔地址:Apache JMeter - User's Manual

或者在jmeter目錄——printable_docs——打開index.html——點擊Function;如下圖:

1、__Random:隨機整數函數,輸入最小值、最大值,如果需要把生成的值保 存在變量中,可以設置變量,如果只是一次使用,可以不設置存儲變量。設置完 上述三項后,點擊生成即可生成函數代碼,在需要的地方使用即可

如下:

①選擇Random,一個范圍內最小值為10,一個范圍內允許的最大值為100,存儲結果的變量名(可選)為nums;點擊生成函數,jmeter自動復制

②打開http請求,粘貼到指定位置

③線程組選擇循環次數;

④執行結果如下:

2、__RandomString:隨機字符串函數,輸入字符串指定長度、字符串的組成字 符,點擊生成即可。如下圖:

打開http請求,粘貼到指定位置

忽略首行:csv文件中如果是字段名,而不是實際的參數化數據的時候,設置為 true,表示第一行數據不作為參數化的數據此外還有如下能實現參數化:
3、__time:當前時間的時間戳函數
4、__RandonDate:隨機日期函數
5、__machineIP:取設備的IP地址函數
等等.....

4、使用 CSV 數據文件設置元件 實現參數化

csv數據文件中的csv稱為逗號分隔值或者字符分割值,其文件以純文本的形式存儲表格數據。在jmeter中可以使用此類型文件提供的數據作為參數化。通過右擊 -- 新增 -- 配置元件 -- CSV 數據文件設置元件進行添加

導入的文件可以為excel后綴名為xls、csv或者txt文本

界面字段介紹:

名稱/注釋:自定義描述性文字

文件名:指保存信息的文件目錄,可以相對或者絕對路徑

文件編碼:默認為ANSI,根據文件類型來,一般設置為UTF-8;GB2312、GBK

變量名稱:給csv文件中各列起變量名字(有多列,用英文逗號隔開列名)

忽略首行:csv文件中如果是字段名,而不是實際的參數化數據的時候,設置為 true,表示第一行數據不作為參數化的數據

分隔符:用什么符號分隔參數化文件中的各列,以csv文件中的分割為準設置

是否允許帶引號:允許參數化文件的參數帶有雙引號,默認是False,如果參數 文件的值帶有雙引號,False模式會將雙引號也當做參數

遇到文件結束符再次循環:到了文件尾是否循環,True---繼續從文件第一行開始 讀取,False---不再循環

遇到文件結束符停止線程:到了文件尾是否停止線程,True---停止,False---不 停止,注:當遇到文件結束符再次循環設置為True時,此項設置無效。

線程共享模式:設置csv數據文件的使用范圍

①新建一個excel文件,后綴名為CSV的文件,

②點擊瀏覽選中上面的文件;文件編碼為GBK;輸入第一行的變量名name;忽略首行為True

③在http請求中引用變量名

④線程組循環5次

⑤點擊執行

寫在最后

最后感謝每一個認真閱讀我文章的人,禮尚往來總是要有的,雖然不是什么很值錢的東西,如果你用得到的話可以直接拿走:

這些資料,對于做【軟件測試】的朋友來說應該是最全面最完整的備戰倉庫,這個倉庫也陪伴我走過了最艱難的路程,希望也能幫助到你!凡事要趁早,特別是技術行業,一定要提升技術功底。

?

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

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

相關文章

python3常用模塊

1 數學運算模塊 math “math”模塊提供了許多常用的數學函數,例如三角函數、四舍五入、指數、對數、平方根、總和等 import math1.1 常數 math.pi 返回圓周率的數學常數。math.e 返回指數的數學常數示例: print(math.pi) print(math.e)1.2 fabs(x) …

基于Pandas和FineBI的昆明職位數據分析與可視化實現(二)- 職位數據清洗與預處理

文章目錄 一、數據集介紹二、缺失值處理三、重復值處理四、薪資數據格式處理五、技能格式處理六、拆分薪資列并處理異常值七、拆分工作區域列八、清洗后的數據集九、完整代碼 一、數據集介紹 這份昆明職位數據集源自 Boss 直聘,數據量頗為豐富,包含 177…

工業4.0核心引擎!意法STM32F407ZET6 單片機 賦能智能PLC/網關設計

STM32F407ZET6 單片機深度解析 1. 產品定位 STM32F407ZET6 是意法半導體(STMicroelectronics)推出的 高性能ARM Cortex-M4單片機,采用 LQFP144封裝,主打 浮點運算、豐富外設和工業級可靠性,廣泛應用于需要復雜算法和實…

[Andrej Karpathy_2] vibe coding | 大型語言模型的1960年代 | 自主性滑塊

Hugging Face的Tom Wolf分享了一段我非常喜歡的視頻,這些孩子正在進行氛圍編程。 我覺得這是一個非常治愈的視頻,我愛這個視頻。(they grow up "knowing" they can build anything 😭greatness) 未來是美好的 前文&…

uv包管理常用命令

uv常用命令 uv init 初始化項目 uv add 包名 添加包;多個包名,中間用空格 uv tree 包的關系 uv remove 刪除所有包 uv sync 重新解析 安裝工具 1、mypy 檢測工具 uv tool install mypy uv tool run mypy xxx.py 使用 2、Ruff uv tool…

Nano-vLLM 源碼學習

以下內容由Trae生成。我只管問和排版。 Nano-vLLM 是一個從零構建的輕量級vLLM實現項目,具備快速離線推理、代碼可讀性高和優化功能豐富等特點,性能表現和原版vLLM相媲美。以下是該項目各目錄和文件的功能說明: 1. 根目錄: benc…

MySQL 8.4 備份與恢復完全指南

本文全面解析MySQL 8.4的備份與恢復機制,涵蓋備份類型、方法、策略及實際操作示例。 一、備份類型解析 1. 物理(原始)備份 vs 邏輯備份 特性物理備份邏輯備份原理直接復制數據庫目錄/文件(如數據文件、日志)導出邏輯結構(CREATE…

Mac 部署Latex OCR并優化體驗(打包成App并支持全局快捷鍵)

🍁 前言 最近閱讀論文,在做筆記的時候總是要手動輸入一些latex公式,非常耗時。我使用Hapigo的Latex 公式識別,感覺還挺好用,但是缺陷是只有30次免費額度,于是在網上搜索了一下,發現可以通過本地…

128K 長文本處理實戰:騰訊混元 + 云函數 SCF 構建 PDF 摘要生成器

一、背景 在數字化辦公時代,PDF 文檔因其格式穩定、兼容性強等特點,成為知識分享與文檔存儲的主要載體之一。但隨著文檔規模的增長,如何快速提取關鍵信息成為亟待解決的問題。尤其對于 128K 字符及以上的長文本 PDF,傳統處理方法…

Elasticsearch 排序性能提升高達 900 倍

作者:來自 Elastic Benjamin Trent, Mayya Sharipova, Chenhui Wang 及 Libby Lin 了解我們如何通過更快的 float / half_float 排序和 integer 排序的延遲優化來加快 Elasticsearch 排序速度。 Elasticsearch 引入了大量新功能,幫助你為你的使用場景構建…

Nginx重定向協議沖突解決方案:The plain HTTP request was sent to HTTPS port

問題原因 ??服務器運行在 HTTPS 模式,但代碼卻發出了 HTTP 重定向指令,兩套協議對不上,瀏覽器直接報錯。?? 在Java中,常見于response.sendRedirect()方法的使用。該方法默認生成基于HTTP的絕對URL,即便原始請求是…

機器學習如何讓智能推薦“更懂你”,助力轉化率飛躍?

機器學習如何讓智能推薦“更懂你”,助力轉化率飛躍? 今天咱聊聊一個電商、內容平臺、社交App都離不開的“秘密武器”——智能推薦系統,以及機器學習到底如何幫它提升轉化率的。 說白了,轉化率就是“點進去買單”的概率。智能推薦做得好,轉化率能蹭蹭上漲;做不好,用戶滑…

Ruby CGI Session

Ruby CGI Session 引言 CGI(Common Gateway Interface)是一種網絡服務器與外部應用程序(如腳本或程序)進行通信的協議。在Ruby語言中,CGI被廣泛用于創建動態網頁。本文將深入探討Ruby CGI Session的相關知識&#xf…

從零開始的云計算生活——第二十四天,重起航帆,初見MySQL數據庫

一.故事劇情 接下來要進入到一條比較長的路——mysql數據庫,之后會用一段時間來學習mySQL數據庫的內容,今天先從基礎開始介紹mysql數據庫。 二.MySQL數據庫概述 1.數據庫概念 數據庫(Database) 簡稱DB,按照一定格式存儲數據的一些文件的…

ES文件管理器v4.4.3(ES文件瀏覽器)

前言 ES文件管理器(也叫ES文件瀏覽器)是一款手機上用來看和管理文件的工具。你可以用它像在電腦上一樣,把文件整理進不同的文件夾,查找照片、文檔、視頻都很方便。它還能看到平時看不到的隱藏文件,幫你清理一些沒用的…

leetcode:693. 交替位二進制數(數學相關算法題,python3解法)

難度:簡單 給定一個正整數,檢查它的二進制表示是否總是 0、1 交替出現:換句話說,就是二進制表示中相鄰兩位的數字永不相同。 示例 1: 輸入:n 5 輸出:true 解釋:5 的二進制表示是&am…

GRU與LSTM之間的聯系和區別

前面我們談到RNN與LSTM之間的關系,而GRU也是循環神經網絡中的一種模型,那么它與LSTM有什么區別呢? 接下來我來對GRU(Gated Recurrent Unit)模型進行一次深度解析,重點關注其內部結構、參數以及與LSTM的對比…

2025年數字信號、計算機通信與軟件工程國際會議(DSCCSE 2025)

2025年數字信號、計算機通信與軟件工程國際會議(DSCCSE 2025) 2025 International Conference on Digital Signal, Computer Communication, and Software Engineering 一、大會信息 會議簡稱:DSCCSE 2025 大會地點:中國北京 審稿…

北峰智能SDC混合組網通信方案,助力無網絡場景高效作業

在自然災害、公共安全事件或大規模活動應急響應中,專用無線對講通信因其不受外部網絡限制、免去通話費用、無需撥號便可實現即時語音調度的特點,展現出其不可替代的價值。尤其在許多無基礎設施的地區,對智能化調度管理的需求并不亞于城市地區…

HarmonyOS應用開發高級認證知識點梳理 (二) 組件交互

以下是 HarmonyOS 應用開發中 ?組件交互? 的核心知識點梳理(高級認證備考重點),涵蓋事件傳遞、狀態管理、通信機制及生命周期協同: 一、事件處理機制 基礎交互類型? (1)點擊事件(onClick) 核心要點?…