2.jmeter常用元件使用

jmeter常用元件使用

jmeter有非常严格的作用域,作用域千万不要放错位置

配置元件

  • 1、HTTP请求默认值
    • 该组件可以为我们的http请求设置默认的值
    • 创建一个测试计划有很多个请求且都是发送到相同的server,只需要添加一个Http request default组件并设置“Server Name or IP”
    • 添加多个http请求会默认使用Http request default组件设置的值
  • 2、HTTP消息头管理器
  • 3、HTTP Cookies管理器
  • 4、HTTP Cache管理器

常用的默认端口:
80--http
8080--tomcat,nginx
8888---代理服务器
3306--mysql
443---https

请求是成功的,结果不正确
图 4
排查原因,查看请求头
Connection: keep-alive
Content-Length: 88
Content-Type: text/plain; charset=UTF-8
Host:
User-Agent: Apache-HttpClient/4.5.7 (Java/1.8.0_151)

发现请求类型跟接口文档不一致
Content-Type: text/html; charset=UTF-8

增加配置文件---消息头管理器
Content-Type: application/x-www-form-urlencoded
发现提示没有cookies
[no cookies]

  • 1、增加一个请求,通过访问首页,获取session,访问路径为:/
  • 2、增加一个HTTP Cookies管理器,自动提取session
    图 5
    重新运行,成功

图 6

现在发现两个请求的协议,IP和端口是一样的,我们可以设置成默认的
增加一个http请求默认值元件,填写协议,ip和端口
然后把那两个请求里面的协议,ip和端口都删除

监听器元件

  • 1、察看结果树---查看问题
    • 1、分析查看具体某一个请求的详情:
      • 请求头、请求体
      • 响应头、响应体
    • 2、在做性能场景的时候
      • 分析错误请求的原因----仅错误日志
  • 2、聚合报告---脚本跑了一段时间,做统计
    • 汇总统计
      • 请求数、响应时间(平均的 90% 95% 99% min max)单位:毫秒
      • 错误率:越低越好
      • 吞吐量:越高越好
      • 发送/接收---带宽

图 7

  • 3、用表格查看结果---看每个请求具体什么时候起
    • 请求什么时候开始,什么时候结束,中间过程是什么样的

图 8

  • 4、图形结果---整体效果,看曲线图

图 9

其他常用元件

  • 1、前置处理器

    • 请求发出去之前的控制器(元件)--位置只要放在请求中即可
    • 比如:加密,md5
      图 10
  • 2、后置处理器

    • 请求发出去之前的控制器(元件)--位置只要放在请求中即可
    • 比如:提前数据,正则表达式
  • 3、定时器--线程里面的

    • 1、思考时间--固定定时器--模拟用户习惯
    • 2、同步定时器--集合点
      • 比如商场打折,规定9点开始,9点之前人员集合在一起,9点开始开始抢购--并发
    • 3、随机定时器--
    • 4、吞吐量定时器--分流效果
  • 4、断言

线程组的延时--线程启动的延时,跟上面的定时器不一样

逻辑控制器:
仅一次控制器,多少个线程有多少次
图 33

原文地址:https://www.cnblogs.com/xiehuangzhijia/p/14966102.html