使用外部檔案進行引數化

引數化效能指令碼的常用方法之一是使用 CSV 檔案。CSV 輸入檔案使用的最佳示例是登入過程。如果要跨不同使用者測試應用程式,則需要提供使用者憑據列表。

假設我們有一個適用於特定使用者的登入請求: StackOverflow 文件

通過使用外部 CSV 檔案並在不同使用者之間執行指令碼,我們可以輕鬆地對該請求進行引數化。要新增 CSV 引數化配置:

右鍵單擊登入請求 - >新增 - >配置元素 - > CSV 資料集配置

StackOverflow 文件

“CSV 資料集配置”引數的簡短說明:

  • 名稱 - 將在 JMeter 樹中使用的元素名稱
  • 檔名 - 輸入檔案的名稱。根據活動測試計劃的路徑解析相對檔名。還支援絕對檔名
  • 檔案編碼 - 輸入檔案的編碼,如果它不是平臺預設值
  • 變數名稱 - 將用作已分析值的容器的分隔變數名稱列表。如果為空,則檔案的第一行將被解釋為變數名稱列表
  • 分隔符 - 將用於從輸入檔案中分割已分析值的分隔符
  • 允許引用的資料? - 如果要忽略雙引號並允許此類元素包含分隔符,則為 true。
  • 在 EOF 上回收? - 如果檔案測試計劃應多次迭代檔案,則為 true。它將指示 JMeter 將游標移動到檔案的開頭
  • 在 EOF 上停止執行緒? - 在 CDC 檔案上迴圈迭代時為 false;如果要在讀取整個檔案後停止該執行緒,則為 true
  • 共享模式:
    • 所有執行緒 - 檔案在所有虛擬使用者之間共享(預設)
    • 當前執行緒組 - 該檔案將為每個執行緒組開啟一次
    • 當前執行緒 - 每個檔案將為每個執行緒單獨開啟
    • 識別符號 - 共享相同識別符號的所有執行緒也共享同一檔案

讓我們建立一個包含姓名和密碼的不同使用者的 csv 檔案: StackOverflow 文件

我們現在可以將此檔案與 CSV 資料集配置一起使用。在我們的例子中,新增 FilenameVariables Names 配置值就足夠了: StackOverflow 文件

我們必須採取的最後一步是使用 CSV 變數對登入請求進行引數化。這可以通過使用 CSV 資料集配置的變數名稱配置欄位中的適當變數替換初始值來完成,如下所示: StackOverflow 文件 如果我們現在執行我們的測試指令碼,JMeter 將使用來自’TestUsers 的值替換這些變數。csv’檔案。每個 JMeter 虛擬使用者都將從以下 csv 檔案行接收憑據。

第一個使用者的登入請求:

StackOverflow 文件

第二個使用者的登入請求: StackOverflow 文件