Jmeter系列(32)- 詳解 CSV 資料檔案設定

小菠蘿測試筆記發表於2020-06-25

如果你想從頭學習Jmeter,可以看看這個系列的文章哦

https://www.cnblogs.com/poloyy/category/1746599.html

 

瞭解一哈什麼是 CSV 檔案

  • 為了實現簡單的資料儲存,是一個純文字的檔案
  • 最通用的一種檔案格式,它可以非常容易地被匯入各種PC表格及資料庫中
  • CSV 檔案可以用記事本、excel開啟;用記事本開啟的話,每一列資料都用逗號隔開

 

為什麼要用 CSV 資料檔案?

  • 從外部匯入測試資料,相當於資料引數化
  • 通過從檔案中匯入大量的測試資料,來模擬大量真實使用者傳送併發請求

 

CSV 資料檔案設定

 

CSV 資料檔案設定介面介紹

 

欄位含義

欄位 含義
Filename 檔名
File encoding 檔案編碼
Variable Names
  • 變數名稱
  • 多個變數用 , 分隔
Ignore first line
  • 忽略首行
  • 只在設定了變數名稱後才生效
Delimiter
  • 分隔符
  • 預設 , 
Allow quoted data? 是否允許帶引號
Recycle on EOF? 遇到檔案結束符EOF 後再次迴圈
Stop thread on EOF? 遇到檔案結束符EOF 後停止執行執行緒?
Sharing mode 執行緒共享模式

後續通過各種栗子來深入理解常用欄位的含義

 

單個欄位的栗子

csv 測試資料

這裡用記事本方式當 CSV 資料檔案,共有 10 條記錄

 

執行緒組結構樹

${num} 是計數器裡面宣告的變數,從 1 開始遞增到 15

 

執行緒組屬性

執行緒數和資料量一致,都是 15

 

csv 資料檔案設定

 

執行結果

 

知識點

  • 忽略首行 True:一般首行都是欄位名字,比如栗子的 mobile,一般都需要忽略除非沒有欄位名
  • 是否允許帶引號 False:可以看到有引號的三條記錄 8、9、10,都還是保留了引號
  • 再次迴圈 True:csv 檔案共有 10 條記錄,但執行緒數有 15 個,迴圈 10 次後,重頭開始迴圈;可以看到 11-15的手機號和1-5的手機號
  • 停止執行緒 False:取了 10 次值之後就到了檔案尾部,但並不會停止執行執行緒,後面會舉個反例

 

多個欄位的綜合栗子

csv 測試資料

兩個欄位,共有 10 條記錄,最後三條記錄有分別有三種引號

 

csv 資料檔案設定

執行緒組結構樹和上面栗子差不多一樣,執行緒數仍然 = 15

和第一個例子的配置項相反:不忽略首行,允許帶引號,遇到檔案結束符不再迴圈

 

執行結果

  • 不忽略首行就會把首行的欄位名都返回回來,如:1-mobile-age
  • 資料有雙引號 "" 時,會把雙引號忽略掉, '' 單引號不算
  • EOF 是檔案結束符,沒有開啟再次迴圈時,會直接返回 EOF

 

開啟遇到檔案結束符停止執行緒

還是上個栗子的執行緒組,只是改了下配置項

 

執行結果

可以看到,執行緒數 = 15,但只有 10 條資料,當跑了 10 個執行緒後,沒有資料了,所以停止執行

相關文章