9. Jmeter-前置處理器


jmeter-前置處理器介紹與使用

  • JSR223 PreProcessor
  • 用戶參數
  • HTML鏈接解析器
  • HTTP URL 重寫修飾符
  • JDBC PreProcessor
  • RegEx User Parameters
  • Sample Timeout
  • BeanShell PreProcessor

JSR223 PreProcessor

用法類似Beanshell 取樣器,可以參考7. Jmeter導入jar包這篇文章。具體用法如下圖所示

import com.seling.test.BeanShellEg;
import com.seling.test.BeanUtil;

BeanShellEg bs = new BeanShellEg("wangwang","南京");

vars.put("username",bs.getUserName());

運行結果如下:

用戶參數

簡單來說就是給不同線程組(用戶)使用不一樣的變量值。官方這張圖很好的詮釋用戶參數的用法,如下圖所示:比如user1的username和password分別是user1和pass1,user2的username和password分別是user2和pass2

HTML鏈接解析器

HTML鏈接解析器筆者看來有點像正則表達式。用個例子解釋下,現在又一個HTML頁面,如下代碼所示:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鳥教程(runoob.com)</title>

</head>
<body>

<form method="post" action="test2">
<input type="checkbox" name="colors" value="red" id="red">紅色<br>
<input type="checkbox" name="colors" value="blue" id="blue">藍色<br>
<input type="checkbox" name="colors" value="green" id="green">綠色
<input type="submit" name="submit" >

</form>

</body>
</html>

然后有一組checkbox,,有紅藍綠三種顏色可選,那么我在jmeter里面設置一個變量,變量名為colors,變量的值可能是紅藍綠三種顏色任一一種。腳本設置如下所示:


運行結果如下:

通過以上幾張圖我們發現,a請求是訪問表單頁面,b請求才是提交。b請求我們設置了一個變量,叫colors,那么colors是哪來的呢?沒錯就是input標簽里面的name值。那么HTML鏈接解析器在這個例子當中是怎么用的呢?就是找colors。這里我們需要注意一下,jmeter變量colors一定要等於input標簽里的name值。HTML鏈接解析器找到name="colors"的值,然后賦值給變量colors。發送b請求時,帶上colors這個參數,並且值是等於紅藍綠。嗯。。寫了那么多,不推薦使用,太麻煩了。。。

JDBC PreProcessor

這個和JDBC Request完全一樣,叫法不一樣。醉了醉了。后面我們講到取樣器再來講它。

Sample Timeout

這個不用多說,比如請求如果超過10000ms,那么將會被中斷。

BeanShell PreProcessor

用法類似Beanshell 取樣器,可以參考7. Jmeter導入jar包這篇文章。也可以參考JSR223 PreProcessor

HTTP URL 重寫修飾符

略(沒想到具體用法)

RegEx User Parameters

配合regular expression extractor使用。暫時沒找到好的例子,后面想到補充。。

軟件測試汪簡書地址
軟件測試汪博客地址

歡迎關注微信公眾號:軟件測試汪。軟件測試交流群:809111560

轉載請注意出處,謝謝合作


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM