簡體   English   中英

如何在JMeter中讀取CSV的值執行HTTP PUT請求?

[英]How to perform HTTP PUT Request by reading values from CSV in JMeter?

如何在 JMeter 中為 HTTP PUT 方法設置 HTTP Request Sampler,以便它可以使用 CSV 數據集配置從 CSV 文件中讀取數據? 在我的場景中,我使用具有以下參數的並發線程組

  • 目標並發數:50
  • 加速時間):10
  • RampUp 步:5
  • 保持目標..():10

這是我的CSV 數據集配置設置: 在此處輸入圖像描述

(Java)變量名的類型有:bookId: Long , title: String , price: double , amount: int , authors: Set , categories: Set , isDeleted: boolean

這是我的HTTP 請求采樣器設置: 在此處輸入圖像描述

...這是我的bookCollection10Items.csv文件的內容,其中引用的值是字符串,尖括號[]中的值是arrays的值(因為我正在更新與類別/作者有多對多關系的書):

1,"哈利波特與魔法石",39.99,2500,[4],7,11,false
2,"東方快車謀殺案",[19.98,500500],1,9,false
3,"羅傑·阿克羅伊德謀殺案",19.99,1500,1,[7,9],false
4,"哈利波特與密室",24.99,0,4,[7,9],true
5,"哈利波特與阿茲卡班的囚徒",17.99,1200,4,7,false
6,"達芬奇密碼",29.99,700,8,10,false
7,“地獄”,22.50,950,8,10,假
11,"戰爭與和平",31.99,300,5,8,false
14,“審判”,27.99,450,6,9,假
15,"IT",16.50,0,2,5,真

我想要實現的是,每個線程(即用戶)以循環方式將“bookCollection10Items.csv”文件中的一個項目select 更新為給定的 bookId,使用“所有線程”作為共享模式選項。
非常感謝任何意見/建議。

JMeter 的內置 CSV 數據集配置按順序從 CSV 文件中讀取行,因此每個用戶將在每次迭代中獲得下一行。

如果您需要閱讀隨機行(但我認為這不是一個好主意,因為我認為測試需要可重復),您將需要 go 一些插件,例如:

  1. 隨機 CSV 數據集配置
  2. HTTP 簡單表服務器

兩者都可以使用JMeter 插件管理器安裝

我已經設法找到解決問題的方法 -> 我犯了一個錯誤:

1)gEdit (Linux 相當於 Windows 記事本)中創建 CSV 文件,而不是使用在單元格中完成工作的 LibreOffice Calc。 因此,這種方式(在gEditLibreOffice Calc中):

3,"羅傑·阿克羅伊德謀殺案",19.99,1500,1,[7,9],false

……是不行的。

2)從列表中刪除尖括號[] ,這樣 arrays 就不會包含 arrays。例如,當存在尖括號時,我得到這個:

{
   // some other fields
   "authors" : [[7,9]]
}

3)必須正確格式化帶小數的數字以包含,而不是逗號(區域設置問題)。 例如,正確的格式是 19.99,錯誤的格式是 19,99

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM