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
转载请注意出处,谢谢合作