最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

以Json形式的數(shù)據(jù)格式實現(xiàn)JMeter參數(shù)化

 更新時間:2021年05月28日 14:12:04   作者:繁華似錦Fighting  
本文以小項目學(xué)院管理系統(tǒng)為例,給大家分享以Json形式的數(shù)據(jù)格式實現(xiàn)JMeter參數(shù)化的相關(guān)知識,包括添加元件操作步驟及使用用戶參數(shù)組件實現(xiàn)參數(shù)化的方法,感興趣的朋友跟隨小編一起看看吧

      參數(shù)化就是動態(tài)的獲取并設(shè)置數(shù)據(jù),當(dāng)執(zhí)行批量操作時,如批量插入或批量刪除,之前每執(zhí)行完一次就需要修改一次,效率太低,參數(shù)化可以代替人工獲取并設(shè)置數(shù)據(jù),安全且高效!

我們本篇文章演示在請求中,以Json形式的數(shù)據(jù)格式,實現(xiàn)JMeter參數(shù)化。

我們以小項目學(xué)院管理系統(tǒng)為例,下載地址:點擊下載,里面有詳細的啟動配置說明和API接口文檔。

接口文檔如下:

學(xué)院-新增
    1) 請求方法:POST
    2) 請求地址:http://127.0.0.1:8000/api/departments/
    3) 請求JOSN報文:(需要Content-Type=application/json)
    4) 調(diào)用傳入的json串如下(可新增多條,之間用,隔開):
        {
            "data": [
                    {
                        "dep_id":"T01",
                        "dep_name":"Test學(xué)院",
                        "master_name":"Test-Master",
                        "slogan":"Here is Slogan"
                    }
              ]
        }
   5) 新增成功返回報文:
    {
      "already_exist": {
        "results": [],
        "count": 0
      },
      "create_success": {
        "results": [
          {
            "dep_id": "T02",
            "dep_name": "Java學(xué)院",
            "master_name": "Java-Master",
            "slogan": "java"
          }
        ],
        "count": 1
      }
    }
   6) 新增失敗id已存在-返回報文:
    {
      "already_exist": {
        "results": [
          {
            "dep_id": "T01",
            "dep_name": "Test學(xué)院",
            "master_name": "Test-Master",
            "slogan": "Here is Slogan"
          }
        ],
        "count": 1
      },
      "create_success": {
        "results": [],
        "count": 0
      }
    }
7) 新增失敗json格式錯誤:
    {
    "status_code": 400,
    "detail": "請求體參數(shù)格式錯誤。"
    }

1、使用“CSV數(shù)據(jù)文件設(shè)置”組件實現(xiàn)參數(shù)化

例如:現(xiàn)在有一個需求,實現(xiàn)批量添加學(xué)院信息。

(1)測試計劃中的元件

添加元件操作步驟:

  • 創(chuàng)建測試計劃。
  • 創(chuàng)建線程組:選中“測試計劃”右鍵 —> 添加 —> 線程(用戶) —> 線程組。
  • 在線程組中,添加配置元件"HTTP信息頭管理器"組件:選中“線程組”右鍵 —> 添加 —> 配置元件 —> HTTP信息頭管理器。
  • 在線程組中,添加配置元件CSV Data Set Config組件:選中“線程組”右鍵 —> 添加 —> 配置元件 —> CSV數(shù)據(jù)文件設(shè)置。
  • 在線程組中,添加取樣器“HTTP請求”組件:選中“線程組”右鍵 —> 添加 —> 取樣器 —> HTTP請求。
  • 在線程組中,添加監(jiān)聽器“察看結(jié)果樹”組件:查看結(jié)果,選中“線程組”右鍵 —> 添加 —> 監(jiān)聽器 —> 察看結(jié)果樹

最終測試計劃中包含的元件如下:

點擊運行按鈕,會提示你先保存該腳本,腳本保存完成后會直接自動運行該腳本。

(2)數(shù)據(jù)文件內(nèi)容

先用Excel表格編輯所需的請求參數(shù),內(nèi)容如下:

我們需要把該文件保存為.csv格式。

然后使用Notepad++打開該文件,點擊“編碼” —> 轉(zhuǎn)為UTF-8編碼,防止中文亂碼。

最終所得到的.csv格式文件的內(nèi)容如下:

(3)線程組元件內(nèi)容

如果需要使用CSV文件中所有的數(shù)據(jù),需要設(shè)置線程組元件的線程數(shù)或循環(huán)次數(shù)。

因為在CSV數(shù)據(jù)文件設(shè)置組件中,有Recycle on EOFStop thread on EOF選項的關(guān)系,所以設(shè)置線程數(shù)和循環(huán)次數(shù)都可以實現(xiàn),使用數(shù)據(jù)文件中的每一組數(shù)據(jù)進行測試。

(4)HTTP信息頭管理器組件內(nèi)容

因為我們要使用Post請求發(fā)送Json數(shù)據(jù),所以需要在請求頭中設(shè)置Content-Type=application/json。

如果我們不在請求頭中進行設(shè)置,默認請求頭的Content-Type值為text/plain,(這在前面的Post請求文章中有詳細的說明),并且在接口文檔中也有明確的要求說明。

如下圖所示:

(5)CSV數(shù)據(jù)文件設(shè)置組件內(nèi)容

如下圖所示:

我一般常用操作,簡單說明:

  • 文件名:就直接瀏覽選擇文件即可,也就是使用數(shù)據(jù)文件的絕對路徑。
  • 文件編碼選擇UTF-8。
  • 變量名稱:就是把數(shù)據(jù)文件的每個變量名都填寫上,中間用逗號分割。
  • 忽略首行:選擇True,如果CSV文件中首行寫的是變量名稱,選擇忽略首行。
  • 分隔符:如果CSV文件中的數(shù)據(jù),使用的是逗號隔開,就是默認值。
  • 如果是制表符,就用\t表示。
  • 是否允許帶引號?:如果變量值中有引號就選擇True,沒有則默認False即可。
  • 其他一般默認選擇。
  • 如果需求看上面說明中寫的很詳細,按工作中實際情況選擇。

(6)HTTP請求組件內(nèi)容

在JMeter中使用參數(shù)化變量的格式:${變量名}。

編輯添加學(xué)院接口內(nèi)容,如下圖所示:

我們可以看到${變量名}中的引用變量名,是以CSV數(shù)據(jù)文件設(shè)置組件中變量名稱中定義變量名為準(zhǔn)。如果不在變量名稱欄中定義任何內(nèi)容,就以數(shù)據(jù)文件中的標(biāo)題列名為引用變量名。

(7)腳本運行結(jié)果

該測試腳本運行結(jié)果如下圖所示:

可以看到四個學(xué)院都成功添加到數(shù)據(jù)庫中了。

我們再去數(shù)據(jù)庫中查看一下,如下圖所示:

這樣就說明我們的JMeter測試腳本實現(xiàn)成功了。

2、使用“用戶參數(shù)”組件實現(xiàn)參數(shù)化

接下來我們使用“用戶參數(shù)”組件,來實現(xiàn)上面的接口。

(1)添加元件操作步驟

創(chuàng)建測試計劃。

  • 創(chuàng)建線程組:選中“測試計劃”右鍵 —> 添加 —> 線程(用戶) —> 線程組
  • 在線程組中,添加配置元件"HTTP信息頭管理器"組件:選中“線程組”右鍵 —> 添加 —> 配置元件 —> HTTP信息頭管理器。
  • 在線程組中,添加取樣器“HTTP請求”組件:選中“線程組”右鍵 —> 添加 —> 取樣器 —> HTTP請求。
  • 在取樣器中,添加前置處理器“用戶參數(shù)”組件:選中“取樣器”右鍵 —> 添加 —> 前置處理器 —>用戶參數(shù)。
  • 在線程組中,添加監(jiān)聽器“察看結(jié)果樹”組件:查看結(jié)果,選中“線程組”右鍵 —> 添加 —> 監(jiān)聽器 —> 察看結(jié)果樹。

最終測試計劃中的元件,如下圖所示:

(2)元件中的內(nèi)容介紹

其實就是把上面示例中,CSV數(shù)據(jù)文件設(shè)置組件刪除掉,然后在取樣器請求的下一級,添加一個用戶參數(shù)組件。

其他元件的內(nèi)容都沒有任何的改動。

所以這里指展示用戶參數(shù)組件中的內(nèi)容,其他組件看上面配置就好。

用戶參數(shù)組件內(nèi)容如下:

測試結(jié)果也是完全通過,數(shù)據(jù)能夠直接存儲到數(shù)據(jù)庫中。

數(shù)據(jù)庫中,如下圖所示:

說明我們上面的JMeter腳本執(zhí)行成功了。

以上就是Json形式的數(shù)據(jù)格式實現(xiàn)JMeter參數(shù)化的詳細內(nèi)容,更多關(guān)于JMeter參數(shù)化的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • java如何讀取resources目錄和同級目錄文件

    java如何讀取resources目錄和同級目錄文件

    介紹了Java中讀取resources目錄和同級目錄文件的方法,并討論了在IDE和發(fā)布環(huán)境中可能遇到的問題,通過測試發(fā)現(xiàn),執(zhí)行目錄可能會影響文件讀取,建議在使用`user.dir`時注意jar包的運行目錄問題
    2024-12-12
  • 一文教會你如何從0到1搭建一個SpringBoot項目

    一文教會你如何從0到1搭建一個SpringBoot項目

    今天剛好學(xué)習(xí)到SpringBoot,就順便記錄一下吧,下面這篇文章主要給大家介紹了關(guān)于如何從0到1搭建一個SpringBoot項目的相關(guān)資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2024-01-01
  • SpringBoot通過計劃任務(wù)發(fā)送郵件提醒的代碼詳解

    SpringBoot通過計劃任務(wù)發(fā)送郵件提醒的代碼詳解

    在實際線上項目中,有不斷接受到推送方發(fā)來的數(shù)據(jù)場景,而且是不間斷的發(fā)送,如果忽然間斷了,應(yīng)該是出問題了,需要及時檢查原因,這種情況比較適合用計劃任務(wù)做檢查判斷,出問題發(fā)郵件提醒,本文給大家介紹了SpringBoot通過計劃任務(wù)發(fā)送郵件提醒,需要的朋友可以參考下
    2024-11-11
  • java學(xué)習(xí)指南之字符串與正則表達式

    java學(xué)習(xí)指南之字符串與正則表達式

    在日常Java后端開發(fā)過程中,免不了對數(shù)據(jù)字段的解析,自然就少不了對字符串的操作,這其中就包含了正則表達式這一塊的內(nèi)容,下面這篇文章主要給大家介紹了關(guān)于java學(xué)習(xí)指南之字符串與正則表達式的相關(guān)資料,需要的朋友可以參考下
    2023-05-05
  • Java實現(xiàn)Map集合遍歷的四種常見方式與用法分析

    Java實現(xiàn)Map集合遍歷的四種常見方式與用法分析

    這篇文章主要介紹了Java實現(xiàn)Map集合遍歷的四種常見方式與用法,結(jié)合實例形式較為詳細的分析了java針對Map集合鍵值對遍歷的常見使用技巧與相關(guān)操作注意事項,需要的朋友可以參考下
    2018-01-01
  • 解決@RequestBody使用不能class類型匹配的問題

    解決@RequestBody使用不能class類型匹配的問題

    這篇文章主要介紹了解決@RequestBody使用不能class類型匹配的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • Java從零開始創(chuàng)建功能豐富的PDF文檔

    Java從零開始創(chuàng)建功能豐富的PDF文檔

    隨著數(shù)字化辦公的普及,PDF格式因其跨平臺兼容性和安全性而被廣泛應(yīng)用于各種場景中,本文將詳細介紹如何使用Java來實現(xiàn)PDF文檔的一鍵生成,有需要的可以了解下
    2025-01-01
  • SpringBoot MyBatis簡單快速入門例子

    SpringBoot MyBatis簡單快速入門例子

    MyBatis 是一款優(yōu)秀的持久層框架,它支持自定義 SQL、存儲過程以及高級映射。這篇文章主要介紹了SpringBoot MyBatis快速入門-簡單例子,需要的朋友可以參考下
    2021-07-07
  • spring mvc+localResizeIMG實現(xiàn)HTML5端圖片壓縮上傳

    spring mvc+localResizeIMG實現(xiàn)HTML5端圖片壓縮上傳

    這篇文章主要為大家詳細介紹了使用spring mvc+localResizeIMG實現(xiàn)HTML5端圖片壓縮上傳,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • SpringMVC實現(xiàn)文件的上傳和下載實例代碼

    SpringMVC實現(xiàn)文件的上傳和下載實例代碼

    本篇文章主要介紹了SpringMVC實現(xiàn)文件的上傳和下載實例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05

最新評論

治多县| 芷江| 昆明市| 元氏县| 内江市| 宣恩县| 鹰潭市| 游戏| 揭东县| 侯马市| 顺义区| 拉萨市| 兴业县| 沁源县| 肇庆市| 迭部县| 福安市| 凤冈县| 阿荣旗| 通许县| 班戈县| 图片| 嘉兴市| 恩平市| 青铜峡市| 商丘市| 盘锦市| 宁都县| 雅安市| 碌曲县| 启东市| 蓬安县| 昌吉市| 五峰| 大埔区| 山东省| 周宁县| 瑞昌市| 永城市| 汉川市| 舞钢市|