資源描述:
《jmeter參數(shù)化方法》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、Jmeter參數(shù)化1.用戶自定義變量右鍵快捷菜單中選擇添加-配置原件-用戶自定義變量。用戶自定義變量中的定義的所有參數(shù)的值在測(cè)試計(jì)劃的執(zhí)行過程中不能發(fā)生取值的改變,因此一般僅將測(cè)試計(jì)劃中不需要隨迭代發(fā)生改變的參數(shù)(只取一次值的參數(shù))設(shè)置在此處。例如應(yīng)用的host和port。取樣器中的host和port用${host}和${port}代替,即使被測(cè)應(yīng)用的部署服務(wù)器發(fā)生了變化,只需要簡(jiǎn)單地修改host和port參數(shù)的取值即可。2.用戶參數(shù)右鍵快捷菜單中選擇添加-前置處理器-用戶參數(shù)與用戶自定義變量不同的是,用戶參數(shù)列表中的參數(shù)取值可以在測(cè)試計(jì)劃執(zhí)行過程中發(fā)生變化。如圖
2、,username和password分別有兩組不同的取值。通過界面右下方的四個(gè)按鈕,可以向列表中增加參數(shù),增加參數(shù)值,刪除參數(shù)和刪除參數(shù)值?!懊看蔚乱淮巍边x項(xiàng)控制參數(shù)取值的變化規(guī)則,如果選中該選項(xiàng),則參數(shù)的值在每個(gè)迭代中保持不變,在新的迭代開始時(shí)取下一個(gè)值。如果取消該選項(xiàng),則參數(shù)值在每個(gè)在其作用域內(nèi)的sampler發(fā)出請(qǐng)求時(shí)取下一個(gè)可用值。如果參數(shù)的取值范圍很小,使用用戶參數(shù)比較合適;如果參數(shù)的取值范圍很大,建議使用csvdatasetconfig方法。3.CSVDataSetConfig右鍵快捷菜單添加-配置原件-CSVDataSetConfigFilen
3、ame:獲取參數(shù)值的文本文件(數(shù)據(jù)池)。文件名既可以使用絕對(duì)路徑,也可以使用相對(duì)路徑。當(dāng)使用相對(duì)路徑時(shí),jmeter會(huì)在當(dāng)前測(cè)試計(jì)劃所在路徑下尋找該文件。FileEncoding:文件編碼方式,默認(rèn)為ANSI.如果文本文件是以其他方式保存的,則請(qǐng)使用相應(yīng)的編碼方式(如utf-8)。VariableNames:從文本文件中獲取內(nèi)容的參數(shù)列表。參數(shù)列表中可以包含多個(gè)參數(shù),用逗號(hào)分隔。Delimiter:文本文件中分隔記錄域的分隔符,“t”表示tab鍵。Allowquoteddata?:當(dāng)該項(xiàng)值是False時(shí),CSVDataSetConfig原封不動(dòng)地將文本文件中相應(yīng)
4、域的值取為參數(shù)值;當(dāng)為Trues時(shí),將處理文本中用雙引號(hào)引用的部分,把雙引號(hào)中的內(nèi)容取為參數(shù)值。除非是CSV文件中的某個(gè)域的值包含有設(shè)定的分隔符,否則該項(xiàng)設(shè)置為False即可。RecycleonEOF:當(dāng)該項(xiàng)取值為True時(shí),允許循環(huán)取值。當(dāng)文件中的全部記錄被取完后,重新從文件的第一行取值。為False時(shí),根據(jù)stopthreadonEOF的取值決定測(cè)試計(jì)劃的執(zhí)行行為。StopthreadonEOF?:當(dāng)RecycleonEOF為true時(shí),無論該項(xiàng)取何值,測(cè)試計(jì)劃的執(zhí)行行為相同;當(dāng)RecycleonEOF為False時(shí),該項(xiàng)值為True時(shí),文件記錄取完后,線程停
5、止運(yùn)行,如果該項(xiàng)取值為False,則線程后續(xù)執(zhí)行時(shí)給定參數(shù)的取值為。Sharingmode:Allthreads,該測(cè)試計(jì)劃的所有線程共享csv文件中的記錄(所有線程按照順序取文件中的記錄)。Currentthreadgroup,該測(cè)試計(jì)劃中的每個(gè)threadgroup中的所有線程共享csv文件中的記錄。Currentthread,每個(gè)線程各自獨(dú)立使用csv的記錄。4.通過系統(tǒng)函數(shù)設(shè)置參數(shù)值選項(xiàng)-函數(shù)助手對(duì)話框,列出了系統(tǒng)函數(shù)的使用方法下面介紹一下常用系統(tǒng)函數(shù):1.__time獲取當(dāng)前時(shí)間第一個(gè)參數(shù)為時(shí)間格式,第二個(gè)參數(shù)為存放獲得當(dāng)前時(shí)間值的參數(shù)名稱,例
6、在第一個(gè)參數(shù)輸入yyyy-MM-ddHH:mm:ss,單擊生成即可得到正確的函數(shù)表達(dá)式。2.__Random隨機(jī)數(shù)3.__StringFromFile從本地csv文件中讀取記錄存入?yún)?shù)與CSVDataSetConfig相比,該函數(shù)的強(qiáng)大之處是它可以支持從多個(gè)文件中讀取數(shù)據(jù)。第一個(gè)參數(shù)是文件名(使用絕對(duì)路徑),第二個(gè)參數(shù)是存放取得數(shù)據(jù)的參數(shù)列表,第三個(gè)和第四個(gè)參數(shù)分別為數(shù)據(jù)文件的起始和終止順序號(hào)。5.jmeter的屬性以命令行方式運(yùn)行測(cè)試計(jì)劃時(shí),用戶可指定從命令行輸入的值替換測(cè)試計(jì)劃中的某些值。例如:以命令行指定線程組的線程數(shù)和運(yùn)行時(shí)長(zhǎng)。__property函數(shù)具有
7、3個(gè)參數(shù),分別為屬性名稱、存放屬性值的變量名稱(可選),屬性默認(rèn)值(可選)。命令行:Jmeter–n–ttest.jmx–Jthreadcount=10–Jduration=60-J表示設(shè)置property的值,以上命令行表示:10個(gè)線程運(yùn)行,運(yùn)行時(shí)間為60秒。