• Jmeter性能测试之基础知识(一)


    1. 官网下载Jmeter: 点这里, 下载完成解压即可

    2. 启动: 进入解压后的bin目录, Windows点击jmeter.bat, Linux执行jmeter

    3. 添加线程组(user) : Test Plan --> Add --> Threads(Users) --> Thread Group, 这里还有setUp Thread Group和tearDown Thread Group, 前者是测试之前做的事, 后者是测试之后做的事. 这里点击Test Plan有个执行计划的设置比较常用, Run Thread Groups consecutively(i.e.one at time), 勾选表示顺序执行, 指的是测试计划中存在多个线程组时,第一个线程组执行完后再执行下一个线程组。下图是线程组的线程配置详情:

    4. 这里介绍常用的几个, 有些不常用的需要用的时候, 自己去试一下或者找下资料看下文档说明.

      Sampler: 常用的HTTP Request/FTP Request/JDBC Request/Java Request, 这个是核心元件, 具体测试的对象在这里写, 基本用到的HTTP Request, post/get的HTTP请求, 这里懂HTTP协议的一看就会了, 需要注意的是编码(有时候会乱码), Redirect Automatically和Follow Redirect的区别, 前者只针对get/head请求, 不会记录中间过程, 后者用于会记录中间过程.

      Logic Controller: 业务逻辑控制器, 懂编程的一看就能明白这是干啥的, 主要常用的有if/Random等等, random也可以使用Options-->Function Helper Dialog里面的函数,例如: ${__Random(1,100,num)}

      Pre Processors: 前置处理器, 在sampler元件之前执行, 一般用的最多的就是参数设置(User Parameters), 这里在参数化的时候在细说

      Post Processors: 后置处理器, 在sampler元件之后执行, 用的多的也就是Regular Expression Extractor/XPath Extractor, 这里在关联的时候再细说

      Assertion: 断言, 常用的Response Assertion(有很多种比较方式, 根据实际情况择优选择)

      Timer: 定时器, 一般用的多的是Synchronizing Timer, 集合点的时候用到

      Config Element: 配置元素, 这里面各个组件功能不一, 比如HTTP Request Defaults, 公共的请求参数都在这里事先配置, 后面在具体的sampler里面, 相同的部分就可以省略不写了

      Listener: 监听器, 常用的查看结果树(View Results Tree), Summary Report(我看和聚合报告的区别好像就是会有个响应时间的标准方差), 聚合报告(Aggregate Report)

    5. 最后说明下性能监控的各项指标

      Label: 取样器, 自定义命名的线程组

      #Samples: 请求数, 样本数

      Average: 平局响应时间, 单位ms

      Min: 最小响应时间, 单位ms

      Max: 最大响应时间, 单位ms

      Median: 50%的请求的响应时间

      90%Line: 90%的请求的响应时间, 性能测试很重要的指标

      95%Line: 95%的请求的响应时间

      99%Line: 99%的请求的响应时间

      Error%: 事务错误率, 一般不高于1%

      Throughput: 吞吐量, 每秒完成的事务数, 也叫TPS, 也是性能测试很重要的指标, 越大越好, 越大说明系统的处理能力越强

      Received KB/sec: 每秒从服务器端接收到的数据量

      Sent KB/sec: 每秒向服务器发送的数据量

      Avg. Bytes: 平均数据流量,单位是Byte

      Std.Dev: 响应时间的标准方差

  • 相关阅读:
    python排序函数sort()与sorted()区别
    python中lambda的用法
    Python中如何获取类属性的列表
    百度编辑器UEditor源码模式下过滤div/style等html标签
    【Flask】关于Flask的request属性
    python json.dumps() json.dump()的区别
    SQLAlchemy技术文档(中文版)(全)
    Flask中'endpoint'(端点)的理解
    SqlAlchemy个人学习笔记完整汇总-转载
    MySQL数据类型和常用字段属性总结
  • 原文地址:https://www.cnblogs.com/fousor/p/9780618.html
Copyright © 2020-2023  润新知