Jmeter使用csv文件讀取測試數據


最近有同事在測試過程中遇到需要造批量測試數據的問題,這些數據往往是同一種單據,但是單據的內容不同,如果手工創建就比較費時費力。那我們用jmeter的csv文件來讀取測試數據就完美解決了這個問題。

我們今天使用Jmeter5.1.1調用博客園的開放API來舉例,接口信息如下:

獲取新聞內容

Url: http://wcf.open.cnblogs.com/news/item/{CONTENTID}

HTTP Method: GET

csv文件准備

  1. 新建一個文本文檔,然后把后綴.txt改成.csv,使用notepad或者記事本打開(這里使用的是notepad)
  2. 將我們的批量測試數據 CONTENTID(新聞Id)寫進來

添加CSV數據文件設置

  1. 添加CSV數據文件設置:打開jmeter -> 右鍵測試計划 -> 添加配置元件 -> CSV 數據文件設置

創建HTTP請求

  1. 創建HTTP請求:打開Jmeter -> 右鍵測試計划 -> 添加-線程-線程組 -> 右鍵線程組 -> 添加-取樣器-HTTP請求

  2. 添加查看結果樹:右鍵HTTP請求 -> 添加-監聽器-查看結果樹
  3. 將上面的接口信息復制到HTTP請求中,一切准備就緒如下圖:

運行並查看結果

  1. 設置線程數和循環次數后啟動(這里我設置的是1個線程循環15次):

  2. 查看結果樹,發現的CONTENTID已經是CSV數據文件中的數據了,響應數據就是對應Id的內容。

最后,我們回到開始的問題,造大量的不同內容的相同單據。我們使用CSV文件來存不同的內容,使用jmeter來循環調用創建數據的接口,這樣就不用手動再去創建單據了,既省時又省力。

CSV文件設置參數說明:

參數 說明
文件名 你的CSV數據文件的路徑
文件編碼 例如可以是UTF-8。那么jmeter就會以UTF-8讀取文件
變量名稱 以逗號分隔的名稱列表,它與CSV文件中的列相匹配。
忽略首行 如果第一行是列名而不是測試數據,就選擇True忽略掉列名
分隔符 默認為','也可以設置為其他值(建議使用默認)
是否允許帶引號 默認為False,如果測試數據中帶有引號則設置為Ture
遇到文件結束符再次循環 默認為True,意思讀完最后一行在回來讀取第一行
遇到文件結束符停止線程 讀完最后一行停止線程
線程共享模式 定義如何在並發線程之間分配值


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM