• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
ellaha
博客园    首页    新随笔    联系   管理    订阅  订阅
jmeter

取样器的执行顺序:从上往下

函数助手对话框:__V setProperty __P 函数助手中帮助

函数跨线程组:

用户定义变量:在这里写入一个变量名phone,变量值为函数对话框中设置的变量,将变量名写入到http请求中的${phone},在注册和登录接口中拿到的phone是同一个值

用户参数:但用用户参数的变量名放在注册和登录接口的参数中,获取到的phone不是同一个这里拿到的全局性的,每个线程每跑一次都会动态获取到一个值

 

前置处理器->用户参数:在这里写入一个变量名phone,变量值为函数对话框中设置的变量,将变量名写入到http请求中的${phone}

注册和登录取到的phone都不一样,定义出来的是全局性的,同一个线程组下每个线程获取一次,用户参数中值都会计算出来,即都会动态取这个值

用户定义变量:注册和登录取到的phone都一样,再将用户定义的变量接受随机函数,再将用户定义的变量写到接口中

同一个线程组下只有初始化的时候计算一次值,在线程组该值不会变的

CSV数据文件设置中线程共享模式:

当前线程组:用户定义变量

当前线程:用户参数,每次线程都会计算一次

概念:

线程组:

线程:

常用函数的处理:

random:随机数

time:如果参数为当前日期,那么公式为${__time(yyyy-MM-dd,)}或者${__time(YMDHMS,)},

格式化生成时间格式 2018-06-01 11:08:23:787 :${__time(yyyy-MM-dd HH:mm:ss:SSS,time)}

精确到毫秒级,13位数1543234323232:${__time(,)}

精确到秒级别,10位数:${__time(1000,)}

__V:两个变量参数的拼接,一般在读取数据库场景中用的多但一个函数加一个字符串不需要 ${__V(${变量1}_${变量2})}

密码加密的处理:digest函数,例如MD5加密

setProperty:设置属性,属于全局变量,可以实现跨线程组,属性可以跨,变量不能跨

P或者property:获取属性

time:生成时间戳

 

1个线程组循环100次与100个线程组循环1次有什么区别,对服务器压力的话是不是是一样的效果?

有,因为一个线程组不断循环,终究是线性顺序执行的,这属于压力测试范畴;而后者100个同时启动,属于并发性测试,对CPU冲击性更大,也是你说的“压力”的本质。
在不考虑 压力测试中的内存泄漏时,处理后者的“压力”必然是更大的

 

posted on 2020-01-13 09:57  ellaha  阅读(138)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3