JMeter基礎教程1 若隱若現的引數化

2022-03-27 20:52:09 字數 2846 閱讀 7624

在開始學習jmeter引數化之前,我們先了解下什麼是引數化:

引數化是自動化測試指令碼的一種常用技巧。簡單來說,引數化的一般用法就是將指令碼中的某些輸入使用引數來代替,在指令碼執行時指定引數的取值範圍和規則;這樣,指令碼在執行時就可以根據需要選取不同的引數值作為輸入。那麼jmeter又給我們提供了怎麼樣的引數化,下面讓我們一一揭開jmeter的引數化。

我們首先新建乙個http登陸請求測試,如下截圖:

其中【username、password】這兩個值預設是寫死的,下邊我們將要實現使用者名稱和密碼引數化,有兩種方法:

點選執行緒組 -> 新增 -> 配置元件 -> csv data set config:

引數說明:

1)filename:f:\jmeter\csvtest.dat檔名,儲存引數化資料的檔案目錄,可選擇相對或者絕對路徑(建議填寫相對路徑,避免指令碼遷移時需要修改路徑);

2) file encoding:utf-8,f:\jmeter\csvtest.dat檔案的編碼格式,在儲存時儲存編碼格式為utf-8即可;

3) variable names(comma-delimited):對應引數檔案每列的變數名,類似excel檔案的檔案頭,起到標示作用,同時也是後續引用的識別符號,建議採用有意義的英文標示;(有幾列引數,在這裡面就寫幾個引數名稱,每個名稱中間用分隔符分割, 例如這裡的user,pwd)

4) delimitet:引數檔案分隔符,用來在「variable names」中分隔引數,與引數檔案中的分隔符保持一致即可;

5) allow quote data:是否允許引用資料,預設false,選項選為「true」的時候對全形字符的處理出現亂碼 ;

6) recycle on eof?:是否迴圈讀取引數檔案內容;因為csv data set config一次讀入一行,分割後存入若干變數中交給乙個執行緒,如果執行緒數超過文字的記錄行數,那麼可以選擇從頭再次讀入;

△ ture:為true時,當已讀取完引數檔案內的測試用例資料,還需繼續獲取用例資料時,此時會迴圈讀取引數檔案資料(即:讀取檔案到結尾時,再重頭讀取檔案);

△false:為false時,若已至檔案末尾,則不再繼續讀取測試資料;通常在「執行緒組執行緒數* 執行緒組迴圈次數>引數檔案行數」時,選用false(即:讀取檔案到結尾時,停止讀取檔案);

7) stop thread on eof?:當recycle on eof為false時(讀取檔案到結尾),停止程序,當recycle on eof為true時,此項無意義;

△若為ture,則在讀取到引數檔案行末尾時,終止引數檔案讀取執行緒;

△若為false,此時執行緒繼續讀取,但會請求錯誤,因此時讀取的資料為eof;

8) sharing mode:共享模式,即引數檔案的作用域,有以下幾種方式:

△all threads:當前測試計畫中的所有執行緒中的所有的執行緒都有效,預設;

△current thread group:當前執行緒組中的執行緒有效;

△current thread:當前執行緒有效;

這裡,我們只要指定【filename】和【variable names(comma-delimited)】這兩個值就行了,其他保持預設,如有編碼需求可針對【file encoding】選項進行修改。

這裡我們對登入的使用者名稱密碼進行引數化,將使用者名稱密碼寫入txt文件,儲存時字尾改為.dat格式,編碼型別選擇utf-8儲存;

然後將儲存的.dat檔案放入計算機的某個盤裡,這裡我放入路徑為:f:\jmeter\csvtest.dat

然後返回http登入請求介面,把使用者名稱和密碼兩項值修改成【$,$】

這樣就完成通過 csv data set config 實現使用者名稱和密碼引數化的操作。

在jmeter頂部【options-function helper dialog】進入函式助手,或直接鍵盤快捷按鍵開啟

在函式幫助表中選 _csvread 函式

csv檔案列號是從0開始的,第一列0、第二列1、第三列2、依次類推...有些同學說是從1開始是錯誤的。

然後點選【生成】按鈕,則會自動生成我們需要的引數化函式。

複製生成的引數化函式,開啟登陸請求頁面,在右則的引數化中找到我們要引數化的字段,這裡對使用者名稱和密碼做引數化,第一列是使用者名稱,列號為0;第二列是密碼,列號為1;修改函式中對應的引數化字段列號就可以啦。

這樣我們就使用 _csvread 函式完成了使用者名稱和密碼的引數化操作。

Tensorflow 基礎教程(1)

在使用tensorflow之前先了解下tensorflow的幾個基礎知識 1 使用圖 graph 來表示計算 2 在回話 session 中執行圖 3 使用張量 tensor 來代表資料 4 通過變數 variables 維護狀態 5 通過供給 feeds 和取回 fetches 將資料傳入或傳出任...

Linux基礎教程 1

今天我來寫乙個檔案壓縮和解壓的命令 tar命令和vim編輯器教程 tar命令可以為linux的檔案和目錄建立檔案。利用tar,可以為某一特定檔案建立檔案 備份檔案 也可以在檔案中改變檔案,或者向檔案中加入新的檔案。tar最初被用來在磁帶上建立檔案,現在,使用者可以在任何裝置上建立檔案。利用tar命令...

canvas基礎教程知識(1)

基本用法 使用canvas,必須設定width和height,置頂圖形大小區域。不可在style中設定寬高。在body中 6接下來要在整塊畫布中繪圖,就要去的上下文聯絡,需要呼叫getcontext 方法。js var drawing document.getelementbyid canvas v...