• Jmeter学习


    Jmeter
    官网地址:https://jmeter.apache.org/
    用户手册:https://jmeter.apache.org/usermanual/index.html


    负载测试:通过逐步加压的方式来确定系统的处理能力,确定系统能够承受的各项的阀值
    压力测试:负载的临界点
    容量测试:负载和压力测试,都是在一定压力条件下我们来看服务的性能,容量测试相反,是在一定性能目标的
    前提下,系统能够处理的做大能力
    配置测试:对被测软件的软硬件配置的测试,找到系统各项资源的最优分配原则

    相关知识
    接口、编程、网络基础、分析系统架构、中间件、数据库、抓包
    性能工具使用、性能场景分析、性能关注指标、监控方式、测试结果瓶颈分析、如何调优

    下载:https://jmeter.apache.org/download_jmeter.cgi

    使用:bin/jmeter.bat点击运行
    修改配置文件:bin/jmeter.properties,sampleresult.default.encoding=utf-8,language=zh_CN

    测试计划TestPlan:用来描述一个性能测试,所有内容都是基于这个测试计划的
    线程组ThreadGroup:一个线程组可设置多个线程,每个线程之间互不影响
    采样器Sampler:HTTP请求
    断言Assertion:响应断言,json断言
    监听器:查看结果树,汇总报告,聚合报告

    jmeter结构体系
    取样器HttpRequest-前置处理器/配置元件/后置处理器-控制器LogicController-定时器-线程组
    |
    断言、监听器

    Jmeter基本原理:是建立一个线程池,多线程运行取样器产生大量负载,在运行过程中
    通过断言来验证结构的正确性,可以听你监听来记录测试结果;
    如果取样器中有参数化需求,可以通过配置元件或者前置处理器来完成;
    如果取样器中有关联需求,可以通过后置处理器来完成;
    如果要模拟负载场景,比如模拟多少用户,运动多长时间,可以通过线程组完成;
    如果要控制业务的执行逻辑,比如登录只运行一次,可以通过控制器来完成


    http请求:线程组-添加-取样器-http请求
    Jmeter超时处理:线程组-advanced
    断言Assert:线程组-添加-断言-json断言
    查看结果树viewResultsTree:线程组-添加-监听器-查看结果树
    参数化函数:tools-function help
    参数化文件:添加csv data set config:线程组-添加-配置元件-csv data set config
    聚合报告:线程组-添加-监听器-聚合报告

    jmeter插件:https://jmeter-plugins.org/

    逻辑控制器
    循环控制器/if控制器/仅一次控制器/foreach控制器

    后置处理器
    json提取器:添加-后置处理器-json提取器
    json路径表达式:https://github.com/json-path/JsonPath
    上个接口的返回值是本接口的参数值时可使用提取器
    正则表达式提取器:添加-后置处理器-正则表达式提取器

    录制:
    Templates-下拉选择Recording-create
    在http(s) Test Script Recorder-点击启动按钮
    如果是https的请求录制,在jmeter的bin目录下,找到刚才生成的证书ApacheJMeterTemporaryRootCA.crt
    导入证书,选择受信任的根证书颁发机构,证书的有效期是7天
    打开浏览器,设置系统代理,internet选项框-连接-代理-局域网设置--代理服务器127.0.0.1:8888
    开始录制,操作浏览器--在jmeter的线程组下recordingController查看录制的请求
    找到需要的数据,可以复制到一个新的线程组中使用
    可以使用正则表达式过滤掉一些录制的数据
    Don't use GUI mode for load testing
    集成到jenkins里面,可以使用命令行方式运行jmeter

  • 相关阅读:
    (八)DVWA之SQL Injection--SQLMap&Burp测试(Medium)
    (五)SQLMap工具检测SQL注入漏洞、获取数据库中的数据
    (四)SQLMap之Tamper篡改脚本的类型、作用、适用场景
    (七)DVWA之SQL Injection--SQLMap测试(Low)
    (三)SQLMap工具-使用选项的操作命令&功能
    20190923-13Linux企业真实面试题 000 021
    20190923-12Linux软件包管理 000 020
    20190923-11Linux crond 系统定时任务 000 019
    20190923-10Linux进程线程类 000 018
    20190923-09Linux磁盘分区类 000 017
  • 原文地址:https://www.cnblogs.com/AIME/p/13738671.html
Copyright © 2020-2023  润新知