日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

jmeter随机参数化不重复_接口测试参数化详解(Jmeter)

發布時間:2025/10/17 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 jmeter随机参数化不重复_接口测试参数化详解(Jmeter) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

接口測試是目前最主流的自動化測試手段,它組合不同的參數向服務器發送請求,接受和解析響應結果,通過測試數據的交換邏輯來驗證服務端程序工作的正確性。我們在測試過程中需要考慮不同的輸入組合,來覆蓋不同的測試范圍;除此之外,系統中往往存在一些有唯一性校驗的接口,不允許重復錄入關鍵字段(eg: 用戶名,身份證…),針對這些有唯一性校驗的接口,需要在每次運行時動態輸入不同的數據。

為了解決上述問題,Jmeter提供了一些參數化的工具,最常用的有RandomString函數,CSVRead函數以及CSVDataSetConfig。

RandomString函數

Jmeter通過RandomString函數助手可動態生成字符串,它包括三個變量:

? Random string length:生成的String長度

? Chars to use for random string generation:用于生成String的字符集

? Name of variable in which to store the result (optional):可選,指定存儲生成的String變量名,供后續接口調用。

通過RandomString可以生成任意長度的指定字符集的字符串,除了生成隨機字符串,還可以基于RandomString拼接擴展特定格式的字符串。

比如有些系統會校驗手機號前三位,即可通過RandomString生成后8位數字,然后拼接滿足需求的前三位數字組合。

RandomString函數非常強大,幾乎可以實現接口單個請求參數的所有參數化工作,但在實際應用中,有時候不同請求參數有一定的關聯性,此時無法通過RandomString來解決多請求參數之間的關聯性問題,需要引入CSV組件來解決。

CSVRead函數

CSVRead函數適用于一組關聯請求參數的場合,比如要選擇用戶的收獲地址,往往需要選擇省->市->區,而省市區這三個請求參數之間有關聯性,此時可以通過自定義一組滿足關聯性要求的數據,將其寫入CSV文件,然后在Jmeter中通過CSV函數來讀取CSV文件。

Jmeter中通過函數助手可引入CSVRead函數的支持,它有兩個參數:

? CSV File to get Values from: 需要讀取的CSV文件

? CSV文件列號:從0開始

CSVRead函數有一些局限性,CSVRead不可指定編碼,跨系統調用時可能出現亂碼;另外多次循環同一個請求時會重復讀取第一行數據,只有當線程數設置為多個時,才會讀取多行數據。

CSV Data Set Config配置元件

CSV Data Set Config 是CSVRead函數的升級版組件,它可以配置更多選項來控制讀取的過程:

? Filename:CSV文件路徑

? File Encoding:編碼格式,中文系統下生成的CSV文件編碼使用GBK (英文系統使用UTF-8)

? Variables Name:生成的變量名,通過順序和Excel列數據對應,指定變量名以后DebugSampler中可查看變量值

? Delimiter:分割符,CSV默認的分割符是逗號,tab分割符用

? Allow quoted data: 是否允許雙引號內的拆分,設置為Ture時,“a,b”,c 會被解析為3列數據,設置為False時,會被解析為2列數據,默認False

? Recycle on EOF:參數文件是否循環遍歷,設置為False時,文件遍歷完則終止提取,請求的參數值為EOF,默認True。無論是設置多線程,還是多次迭代,都會循環遍歷CSV文件。

? Stop thread on EOF:參數值為EOF時,是否停止執行線程。當 Recycle on EOF 設置為 true 時,此項不起任何作用。當且僅當 Recycle on EOF? 為 false 時,此項配置才生效。默認為False

? Sharing mode:共享模式,All threads:參數文件對所有線程共享,包括同一測試計劃中的不同線程組;Current thread group:只對當前線程組中的線程共享;Current thread:僅對當前線程獲取。

以上三個組件基本涵蓋了接口自動化中參數化的絕大多數功能,對于更復雜的參數化需求,可通過編碼方式實現腳本,并通過Jar包的方式引入腳本支持。

作  者:Testfan Kitty

出  處:微信公眾號:自動化軟件測試平臺

版權說明:歡迎轉載,但必須注明出處,并在文章頁面明顯位置給出文章鏈接

總結

以上是生活随笔為你收集整理的jmeter随机参数化不重复_接口测试参数化详解(Jmeter)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。