jmeter部分功能介绍(一)

1、线程组:代表一定数量的并发用户,可以用来模拟并发用户发送请求。

     添加路径:Test Plan(鼠标右击) -> 添加  ->Threads(Users) -> 线程组

    包含配置信息:线程数、Ramp-Up Period(in seconds)、循环次数

     配置信息功能介绍:

         A:线程数:表示操作系统能够进行运算调度顺序的控制流的个数

         B:Ramp-Up Period(in seconds):表示在指定时间内创建完所有的线程;例如有8个线程,Ramp-Up time=200秒,10个                     线程在20s内完成启动,那么线程的启动时间间隔为20/10=2秒。这样的好处是在一开始的时候不会对服务器有太大的                   负载。

         C:循环次数:控制执行每个线程循环的次数,如果有200个线程,循环次数为100次,则总请求数为2万个。如果不填默认                  为永远循环,如果选“永远”,那么会一直发送请求,直到选择停止运行脚本。

 

2、取样器:模拟各种请求。所有实际的测试任务都由取样器承担,存在很多种请求。如:HTTP 、Java、ftp请求等等

      添加路径:一般都是在线程组==》添加==>Sampler(取样器)==》添加对应的请求

 

3、jmeter参数化:用户定义的变量、函数生成器、读取文件

         A:用户定义的变量:添加配置元件-用户定义的变量

         使用方法:${参数名称},使用在请求中

 

      B:函数生成器

需要用到函数助手功能,可以调用函数生成一些有规则的数据。常用的几个函数有_uuid、_random、_time。_uuid会生成一个随机唯一 的id,比如在避免java请求重发造成未处理数据太多的情况,接口请求可加一个唯一的请求id唯一的响应id进行一一对应;随机数_random,可以 在你指定的一个范围里取随机值;取当前时间_time,一些时间类的入参可以使用,如{__time(,)} 是生成精确到毫秒的时间戳、{__time(/1000,)}是生成精确到秒的时间戳、${__time(yyyy-MM-dd HH:mm:ss,)} 是生成精确到秒的当前时间。

 

      C:引入csv文件参数化

         不做介绍

 

      D:jmeter关联:前后2个接口之间的关联,后一个接口需要使用前一个接口的返回值中的指定值,比如登录接口、购买商品               接口;

         

          jmeter关联可以通过正则表达式提取器和json path extractor(不做介绍,因为还没有用到)来完成。

 

          (1)正则表达式提取器:

 

备注:关于正则表达式

 

():括起来的部分就是要提取的。 

.:匹配除换行外的任何字符串。 

+:代表+号前面的字符必须至少出现一次(一次或多次)。 

?:代表?前面的字符最多可以出现一次,在找到第一个匹配项后停止(0次或1次)。 

:代表号前面的字符可以不出现,也可以出现一次或者多次(0次、1次或者多次) 

(.*):贪婪模式,匹配尽可能多的字符 

(.*?)或(.+?):匹配尽可能少的字符,一旦匹配到第一个就不往下走了。

 

注意:如果有响应数据只有数字,譬如返回的是个100, 就不能用.*?,因为?会取最小值,所以去掉就好,改为 (.*)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值