zoukankan      html  css  js  c++  java
  • 图解jmeter压测http接口

    此次压力测试是以一个http json的后台接口为例。

    1. 创建相应的部件

    hum5tjjv.xjm

    2. 设置相应的参数

    jaoyphtb.eti

    线程组主要用于设置一共要测试的线程数量(上图1000),每秒起的线程数(上图10),几秒内启动完单循环内要跑的线程(上例子中为10秒内启动1000个线程,即通常所说的100并发),一共测试多少个循环(上图永远)。

    je2ykpva.gkj

    http请求主要用于设置 被测试服务器的 ip地址 端口 服务地址 请求体数据。

    niykhfpb.2ig

    http信息头管理器,主要用于设置http头字段信息,比如Content-Type。

    i1dexihf.fvj

    聚合报告 主要用于测试结果查看。

    Error 表示请求失败的百分比,比如请求500或者404都算error。通常需要跑12-24小时。

    Througghput表示吞吐量,通常按上图线程组的参数设置,需要达到的指标是200/s

    3. 其他

        压力测试不仅能评估性能指标,还能验证程序的稳定性。比如db连接未关闭,文件句柄未关闭,并发未处理好等,这些问题上压力测试一压,在大量请求的考验下,基本上很快就能暴露出问题

    4. 指定多个请求参数

    上面的示例是多次压测请求都是一个参数。在某些时候我们需要不同的参数。 比如我10个线程并发,我需要这10个线程使用不同的10个报文。此时需要使用前置处理器用户参数。

    rn0z5tji.1gk

    然后点击右下的添加参数,添加一个参数 比如参数名是q

    点击右下的添加用户, 如果你需要10个报文就添加10个参数,每个用户下填写对应的不同的要测试的报文值….

    njwkxtew.s1h

    在http请求的body data 页签上写上${q} 就可以达到目的了。

    zqonhn4q.nvz

    如果你http header中字段有同样的述求也可以这样玩,一样的,用${自定义的用户变量名}

  • 相关阅读:
    关于Unity中的NavMeshAgent的remainingDistance问题
    关于Unity中MonoBehaviour的构造函数
    【Unity】Domina-Game总结与反思
    初步理解IOC和DI和AOP模式
    简单并查集归纳
    括号匹配-记错心得
    Django博客项目思路整理
    找零问题
    连续子序列最大和的O(NlogN)算法
    Python-demo(photo)
  • 原文地址:https://www.cnblogs.com/simoncook/p/5669331.html
Copyright © 2011-2022 走看看