jmeter前置处理器---原生

文章目录

    • 1)用户参数
    • 2)JDBC Preprocessor
    • 3)RegEx User Parameters(正则表达式用户参数)
    • 4)Sample Timeout(取样器超时)
    • 5)HTML链接解析器
    • 6)HTTP URL 重写修饰符

1)用户参数

用户可以利用此元件进行参数设置,在取样器中进行参数化。
用户变量也可以在测试计划中指定,但不是特定于各个线程。此面板允许您为任何用户变量指定一系列值。对于每个线程,将根据序列中的一个值为变量分配一个值。如果线程数多于值,则重新使用这些值。例如,这可以用于分配每个线程使用的不同用户ID。用户变量可以在任何JMeter组件的任何字段中引用。
jmeter前置处理器---原生_第1张图片

2)JDBC Preprocessor

JDBC预处理程序使您可以在样本运行之前运行一些SQL语句。如果JDBC样本需要某些数据位于数据库中,并且无法在初始化线程组中计算此数据,则此选项非常有用。
jmeter前置处理器---原生_第2张图片

3)RegEx User Parameters(正则表达式用户参数)

允许使用正则表达式从一个HTTP请求中提取指定动态值并传递到另一个HTTP参数。正则表达式用户参数特定于各个线程。

此组件允许您指定提取HTTP请求参数的名称和值的正则表达式的引用名称。必须为参数名称和参数值指定正则表达式组编号。仅对使用此名称匹配的正则表达式用户参数的取样器中的参数进行替换。
jmeter前置处理器---原生_第3张图片

  • Regular Expression Reference Name :正则表达式的引用名称 是
  • Parameter names regexp group number: 用于提取参数名称的正则表达式的组编号
  • Parameter values regex group number:用于提取参数值的正则表达式的组编号

4)Sample Timeout(取样器超时)

如果完成时间过长,此前置处理器会调度计时器任务以中断样本。如果超时为零或为负,则忽略超时。为此,取样器必须实现可中断。已知以下取样器可实现: AJP,BeanShell,FTP,HTTP,Soap,AccessLog,邮件阅读者,JMS订阅,TCP取样器,测试活动,Java取样器

此测试元件适用于连接超时或响应超时等单个超时不足或取样器不支持超时的情况。超时应设置得足够长,以使在正常测试中不会被触发,同时要足够短以使它会能中断被卡住的样本。

【默认情况下,JMeter使用Callable来中断取样器。这与定时器在同一个线程中执行,因此如果中断需要很长时间,则可能会延迟后续超时的处理。这不是一个问题,但如果有必要, 可以将属性InterruptTimer.useRunnable设置为true以使用单独的Runnable线程而不是Callable。】
jmeter前置处理器---原生_第4张图片

5)HTML链接解析器

此修饰器解析来自服务器的HTML响应并提取链接和表单。将检查通过此修饰器的URL测试样本,以查看它是否“匹配”从前一个响应中提取的任何链接或表单。然后,它将使用匹配的链接或表单中的适当值替换URL测试样本中的值。Perl类型的正则表达式可用于查找匹配项。

6)HTTP URL 重写修饰符

帮我们重定向URL请求的,重写URL来存储会话id,一般浏览器与服务器之间的会话用Cookie来管理,在Jmeter中就是HTTP Cookie 管理器。但是在实践工作中还有另外一种会话保持方式。
比如系统只允许登录成功的用户才可以访问系统,当用户登录成功后返回一个SessioniD(或者Jsessionid)给用户,后续访问都要求验证这个SessioniD。如果后续的请求都是以Get的方式提交表单,那么SessioniD需要附加在URL链接中,而且每一个Get请求都是如此,这种重复工作,显然是可以用一个操作来完成的,就是该元件。

例子:

下图中Req1以Get方式访问(系统登录)服务器,得到响应Resl中包括SessioniD
,Req2的URL链接中就要带上SessioniD,eg:http://www,testroad.org?search=seling&SessioniD=jfdkjdkf%20jddkfdfjkdjfdf%22

jmeter前置处理器---原生_第5张图片
jmeter前置处理器---原生_第6张图片

你可能感兴趣的:(#,Jmeter组件基础)