zoukankan      html  css  js  c++  java
  • jmeter进行http压力测试(图文小教程)

    下载地址:http://jmeter.apache.org/download_jmeter.cgi

    JMeter基于Java开发,需要系统有安装JDK环境。解压后进入bin目录,点击jmeter.bat

    1、添加线程组:

    测试计划 -> 添加 -> Threads(User) -> 线程组,添加后进入如下界面:

    线程数:表示将模拟多少个用户进行测试。
    Ramp-Up Period(in seconds):线程启动间隔,所有线程将在这个时间内依次启动。
    循环次数:所有线程执行一次为一次循环。

    如果线程数为200 ,循环次数为10 ,那么每个线程发送10次请求。总请求数为200*10=2000 。如果勾选了“永远”,那么所有线程会一直发送请求,直到选择停止运行脚本。

    2、添加采样器:
    采样器可理解为针对前面创建的线程需要做什么事情,这里以添加HTTP请求为例。
    1)线程组 -> 添加 -> Sampler -> HTTP请求,添加后进入如下界面:

    上图为压测http的get类型接口,url中${newId}和${page}是动态参数,需要从文件中获取

    服务器名或ip:填写服务器ip地址(例如:192.168.1.23)

    路径:填写url接口剩余部分;
    协议:向目标服务器发送http请求时的协议,可以是http或者是https,默认值为http
    方法:发送http请求的方法,可用方法包括get、post、head、put、options、trace、delete等。
    Content encoding:内容编码方式
    路径:目标url路径(不包括服务器地址和端口)
    自动重定向:如果选中该选项,当发送http请求后得到的响应是302/301时,jmeter自动重定向到新的页面。
    Use keep Alive:当该选项被选中时,jmeter和目标服务器之间使用keep-Alive方式进行http通信,默认选中
    Use multipart/from-data for http post:当发送http post请求时,使用Use multipart/from-data方法发送,默认不选中。
    同请求一起发送参数:在请求中发送URL参数,对于带参数的URL、jmeter提供了一个简单的对参数化的方法。用户可以将url中所有参数设置在本表中,表中的每一行是一个参数值对(对应URL中的名称 名称1=值1 )
    同请求一起发送文件:在请求中发送文件,通常,http文件上传行为可以通过这种方式模拟。

    2)添加CSV Data Set Config 来参数化

    在d盘简历如下data.txt文件,在variable Names中输入newId,page后,在http请求中就可以通过${newId}获取到

    [html] view plain copy
     
    1. 1,1  
    2. 11,1  
    3. 111,1  

    3)如果是post接口,则把post数据写到parameters下面

    3、添加监视器
    监视器可以理解为针对结果的不同查看方式。JMeter里提供了多种结果表现形式。可通过 HTTP请求 -> 添加 -> 监视器 -> 察看结果树、聚合报告等等。

    聚合报告各指标:

    Label:每个 JMeter 的 element(例如 HTTP Request)都有一个 Name 属性,这里显示的就是 Name 属性的值

    #Samples:表示你这次测试中一共发出了多少个请求,如果模拟10个用户,每个用户迭代10次,那么这里显示100

    Average:平均响应时间——默认情况下是单个 Request 的平均响应时间,单位为毫秒。当使用了 Transaction Controller 时,也可以以Transaction 为单位显示平均响应时间

    Median:中位数,也就是 50% 用户的响应时间

    90% Line:90% 用户的响应时间

    Min:最小响应时间

    Max:最大响应时间

    Error%:本次测试中出现错误的请求的数量/请求的总数

    Throughput:吞吐量——默认情况下表示每秒完成的请求数(Request per Second),当使用了 Transaction Controller 时,也可以表示类似 LoadRunner 的 Transaction per Second 数

    KB/Sec:每秒从服务器端接收到的数据量,相当于LoadRunner中的Throughput/Sec

  • 相关阅读:
    控制测试与实质性程序的关系
    【2020-02-23】一个生活视角的触发
    工作,拼的都是脏和累
    【2020-02-22】让偶然不再偶然
    【2020-02-21】当心自己的想象力
    【2020-02-20】想清楚,自己在为谁服务
    静态化与伪静态化的区别
    e3商城_day04
    e3商城_day03
    服务器,操作系统,虚拟机,虚拟主机,IP地址
  • 原文地址:https://www.cnblogs.com/aligege/p/8385258.html
Copyright © 2011-2022 走看看