zoukankan      html  css  js  c++  java
  • JMeter性能(压力)测试--使用解锁

    1. 首先去官网下载JMeter:  http://jmeter.apache.org/download_jmeter.cgi

    2. 解压缩后到目录 apache-jmeter-5.0in 下找到 jmeter.bat 点击执行,出现以下界面:

    3. 然后新建需要测试的http请求,以 ”http://www.baidu.com/s?ie=utf-8&wd=jmeter性能测试“ 为例:

    Test Plan -> Add -> Threads(Users) -> Thread Group

    Name: 线程组名称

    Number of Threads(users) : 虚拟用户数。一个虚拟用户占用一个线程或进程,设置多少虚拟用户在这里就是设置多少个线程数。

    Ramp-Up Period(in seconds):准备时长,设置的虚拟用户数需要多长时间全部启动,如果线程数为10,准备时长为2,那么需要2秒钟启动10个线程,即每秒钟启动5个线程。

    Loop Count: 循环次数,每个线程发送请求的次数,如果线程数为10,循环次数为100,那么每个线程发生100次请求。总请求数为10 * 100 = 1000,如果勾选了 Forever,那么所有线程会一直发送请求,直到选择停止运行脚本。

    Delay Thread creation until needed:知道需要时延迟线程的创建。

    Scheduler:调度器,设置线程组启动的开始时间和结束时间(配置调度器时,需要勾选循环次数为永远)。

    4. 添加需要测试的请求: Thread Group -> Add -> Sampler -> HTTP Request

    填写参数内容如下:

    ie: 编码方式,默认为utf-8

    wd: 搜索词,为jmeter性能测试

     5. 添加查看结果树: 右键点击Thread Group -> Add -> Lisenter -> View Results Tree

    修改响应数据格式为:HTML  Source Formatted,Response Data中可以看到本次请求返回的数据:

    6. 添加用户自定义变量,右键 -> Thread Group -> Add -> Config Element -> User Defined Variables

    将wd(搜索词)设置为自定义变量:

    并可在http请求中使用该参数,格式为:${wd},之前为:jmeter性能测试

    7. 添加断言

    右键点击 HTTP Request ->  Assertions -> Response Assertion

    主要选中: Main sample only, Document [text], Contains,  在Patterns to Test中添加用户自定义变量,因为查到的结果中一定会包含搜索词,否则判断为请求失败。

    8. 添加断言结果

    右键点击 HTTP Request -> Add -> Lisenter -> Assertion Results

     如果请求成功,则会直接显示HTTP Request, 否则会显示Response Assertion: Test failed: document expected to contain /断言中写的匹配内容/ (我故意改成了${wd} 111, 所以会断言失败)

    9. 添加聚合报告

    右键点击 Thread Group -> Add -> Lisenter -> Aggregate Report

    执行请求后(可以先修改性能测试相关参数配置:线程数、循环次数、持续时间等,目前我这里还是单线程作业),聚合报告就会显示如下:

    聚合报告参数详解:

    Lable:每个JMeter 都有一个Name属性,这里显示的就是Name属性的值。

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

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

    Median: 中位数,即50%用户的响应时间。

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

    Min: 最小响应时间。

    Max: 最大响应时间。

    Error%:错误率--错误请求数/请求总数

    Throughput:吞吐量--默认情况下表示每秒完成的请求数。

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

    一般来说,性能测试中我们需要重点关注的数据有:#Samples请求数、Average平均响应时间,Min最小响应时间,Max最大响应时间,Error% 错误率及Throughput吞吐量。

  • 相关阅读:
    poj 3321 Apple Tree
    hdu 1520 Anniversary party
    Light OJ 1089 Points in Segments (II)
    Timus 1018 Binary Apple Tree
    zoj 3299 Fall the Brick
    HFUT 1287 法默尔的农场
    Codeforces 159C String Manipulation 1.0
    GraphQL + React Apollo + React Hook 大型项目实战(32 个视频)
    使用 TypeScript & mocha & chai 写测试代码实战(17 个视频)
    GraphQL + React Apollo + React Hook + Express + Mongodb 大型前后端分离项目实战之后端(19 个视频)
  • 原文地址:https://www.cnblogs.com/miaoying/p/9876628.html
Copyright © 2011-2022 走看看