JMETER安装与配置教程

JMETER安装与配置教程1.前言ApacheJMeter是一款纯java编写负载功能测试和性能测试开源工具软件。2.方案理由1、不依赖界面,服务正常启动,传递参数明确便可添加测试用例执行测试。2、测试脚本不用编程,熟悉http请求和业务流程,就可以编写测试用例。3、测试脚本维护方便,可将测试脚本复制,并且可以将某一部分单独保存。4、可以跳过页面限制,向后台程序添加非法数据,测试后台程序的健壮性。5、Jme…

大家好,又见面了,我是你们的朋友全栈君。

1.前言
Apache JMeter是一款纯java编写负载功能测试和性能测试开源工具软件。

2.方案理由
1、不依赖界面,服务正常启动,传递参数明确便可添加测试用例执行测试。
2、测试脚本不用编程,熟悉http请求和业务流程,就可以编写测试用例。
3、测试脚本维护方便,可将测试脚本复制,并且可以将某一部分单独保存。
4、可以跳过页面限制,向后台程序添加非法数据,测试后台程序的健壮性。
5、Jmeter断言可以验证代码中是否有需要得到的值
6、使用参数化及Jmeter提供的函数功能,可快速完成测试数据的添加修改

3.准备工作
准备JDK安装包和JMETER安装包
在这里插入图片描述
4、JMETER配置
4.1 登录官网Jmeter下载,得到压缩包jmeter-5.0.tgz,
下载地址:https://jmeter.apache.org/download_jmeter.cgi

4.2 安装Jmeter
将下载的压缩包解压到你要安装的目录:比如 D:\ruanjian\hd-jmeter
· 下载后解压到指定文件夹,创建Jmeter_Home 值为Jmeter的安装目录;
· 新建系统变量CLASSPATH 复制以下内容 :%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;%JMETER_HOME%\lib\jorphan.jar;%JMETER_HOME%\lib\logkit-2.0.jar;
· 然后到Jmeter的安装目录下的bin找到jmeter.bat文件,双击打开;

4.3 运行Jmeter 进入到Jmeter安装目录下的bin目录下,双击jmeter.bat 启动。
在这里插入图片描述

这时候可能会出现如下情况:
在这里插入图片描述
说明本地机器没有安装JDK和JAVA环境
4.4 安装JDK
JDK官方安装地址:
https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
需要注册或者登陆oracle账号。
推荐地址:https://dl.pconline.com.cn/download/870496.html
在这里插入图片描述
本人电脑是64位:
在这里插入图片描述

JDK环境变量
1、新建环境变量 Java_Home 值为 JDK的安装目录,我的地址:D:\ruanjian\hd-jdk
2、找到环境变量path,新增 %Java_Home%\bin;%Java_Home%\lib 注意中间的。
3、打开cmd输入java;javac;java -version进行验证。

4.5、 Jmeter汉化

打开Jmeter的bin目录找到jmeter.properties,打开此文件,在第三十七行下新增如下语句language=zh_CN,然后保存退出,重新打开jmeter就ok啦!
在这里插入图片描述在这里插入图片描述

双击bin目录下的jmeter.bat,就可以启动Jmeter
在这里插入图片描述

5、开始测试
5.1 为了验证信息正确性,这里使用HTTP镜像服务器进行校验测试:
在这里插入图片描述
5.2 压力测试实例
http请求接口地址:

http://myhdzend.com/zfproject/public/user/insert-user?name=hand

要使用Jmeter对其进行压测,测试步骤如下
5.2.1、首先建立一个线程组
在这里插入图片描述

5.2.2、设置线程组参数。这里配置为:10个线程,同时启动,循环一次
在这里插入图片描述

5.2.3 新增http请求默认值。 在上一步创建的线程组上,新增http请求默认值,所有的请求都会使用设置的默认值,这设置协议为http,IP为localhost,端口为8080。
在这里插入图片描述
5.2.4 添加要压测的http请求
在这里插入图片描述
注意:下图第一个红框内的协议、IP、端口不需要设置,会使用上面5.2.3步骤中设置的默认值,只需设置请求路径Path即可,这里填入/zfproject/public/user/insert-user。然后添加参数,若参数值是中文或特殊字符,需要勾选URL Encode。
在这里插入图片描述
5.4 新增监听器,用于查看压测结果。这里添加三种:察看结果树,断言结果,聚合报告、图形结果、用表格查看结果,区别在于结果展现形式不同。
在这里插入图片描述

设置断言持续时间, 设置持续时间(毫秒),即性能测试的响应时间
在这里插入图片描述在这里插入图片描述

5.5 保存测试计划,点击启动按钮开始测试,查看测试结果。
5.5.1、察看结果树测试:
在这里插入图片描述
5.5.2 聚合报告测试

在这里插入图片描述

5.5.3 图形结果
在这里插入图片描述
5.5.4 用表格查看结果
在这里插入图片描述
5.5.5 断言结果,可以看到每个请求是否超出断言时间
在这里插入图片描述

6、用户自定义变量
6.1、以上测试为实例,添加一个“用户定义的变量”,设置变量”host” 以及值,这样在添加数据接口就可以通过”${host}”取得“服务器名称或IP”的值。

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

6.2 、测试文件上传
新建“HTTP”请求 命名为:文件图片上传
在这里插入图片描述
注意:对POST使用multipart/form-data 和 与浏览器兼容的头 一定要勾选。
MIME类型 填写 Content-Type: image/png
在这里插入图片描述

后台程序可能规定文件图片格式为比如:jpg,gif,png,要按规定上传,点击执行。
在这里插入图片描述

  1. “HTTP Cookie 管理器”的应用
    以修改数据接口为例,建立一个HTTP请求改名“数据修改”, 输入对应的host, path以及同请求一起发送的参数和值。
    在这里插入图片描述
    但是由于修改需要权限或者登录人信息cookie 验证,则需要添加”HTTP Cookie 管理器”以传递Cookie。如下图:
    在这里插入图片描述在这里插入图片描述
    点击启动按钮后,可以通过上述观察结果中察看。

7、建立接口直接的关联
7.1、以下以增加数据接口和修改数据接口为例,在这两个接口间建立关联,让修改数据接口可以实时取得增加数据的”id” 值,不必再手动输入最新的id值。一下是两个接口返回值(这边后台修改了返回数据格式)
在这里插入图片描述
在这里插入图片描述
7.2 应用”JSON提取器” 来实现
右键“数据库修改数据” -> “后置处理器 -> “JSON提取器”
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
修改数据处更改对应的提取字段
在这里插入图片描述
执行之后查看执行结果,如下图:
在这里插入图片描述
在这里插入图片描述
综上:这种关联接口的方式适合用于用户登录自动获取签名或者sessionId值,以便后续执行其他接口测试。尤其针对有缓存或者权限验证的接口。
8.在上述实例基础上进行脚本录制。首先添加“HTTP代理服务器”,
在这里插入图片描述

然后选择实例中 “测试计划> 线程”,“每个组放入一个新的控制器”
在这里插入图片描述
排除模式选择需要排除的,比如不必要的图片: ..(js|css|png|jpg|ico|png|gif).
在这里插入图片描述
9.设置浏览器代理 :
选择 Chrome浏览器中 设置 -> 高级
在这里插入图片描述在这里插入图片描述

设置完毕之后点击 “HTPP代理服务器”页面的 “启动” ,然后点击“OK”
在这里插入图片描述
就会看到产生结果,至此是JMETER的基本安装和测试教程。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/138754.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 迁移数据库数据到SQL Server 2017

    迁移数据库数据到SQL Server 2017

    2021年11月26日
    39
  • 怎么用python打开csv文件_使用Python从CSV文件读取数据

    怎么用python打开csv文件_使用Python从CSV文件读取数据CSV文件,也就是Comma-separatedValue文件,用sublime打开是这样(数据下载见文末):如果用excel打开是这样(千万别点保存,保存就有问题):来看看怎么打开,如果安装了anaconda,我们先打开JupyterNotebook,新建一个ipynb文件:我们看完数据了,应该从哪里开始?当然是从python官方文档开始!先搜下csv,找到不少结果,csv是python…

    2022年7月20日
    22
  • 路由器有线桥接的两种方式异同

    路由器有线桥接的两种方式异同根据这篇文章 http www gezila com tutorials 46010 html 我小结下两种方式之要点及异同另主路由器为路由器 A 副路由器为路由器 B 方式一 LAN WAN1 A 的 LAN 口接到 B 的 WAN 口 2 B 的以太网接入方式 WAN 口接入类型 选择动态 ip 这个 ip 实质是由 A 的 DHCP 服务分配的 如图 可见 A 给 B 分配的 ip 地

    2025年6月17日
    4
  • 云服务器ECS和轻云服务器区别

    云服务器ECS和轻云服务器区别

    2021年5月25日
    158
  • 2020年最佳恶意软件删除工具Top 10「建议收藏」

    2020年最佳恶意软件删除工具Top 10「建议收藏」恶意软件删除工具可以帮助你从个人计算机中删除危险的恶意软件,从而避免受到黑客的攻击并防止以后的攻击隐患。保障你的电脑或笔记本电脑的安全性是非常重要的,因为你永远不知道攻击者何时会对你的设备发起攻击。所以,这意味着你不仅需要杀毒软件,还需要一个恶意软件删除工具。比如,广告软件和间谍软件有很大的不同之处,它们不是病毒。因此,仅查出设备是否已受到恶意软件的影响是远远不够的,而且采用手动删除的方法也是非常不切实际的。故此,恶意软件清除已成为一个普遍的问题。如今,恶意软件感染越来越普遍化,即便你自认为..

    2022年6月24日
    70
  • oracle srvctl命令,Oracle SRVCTL使用说明

    oracle srvctl命令,Oracle SRVCTL使用说明SRVCTL是Oracle9iRAC集群配置管理的工具。本文是对SRVCTL的所有命令进行详细说明的一篇参考文档。添加数据库或实例的配置信息。在增加实例中,与-i一起指定的名字应该与INSTANCE_NAME和ORACLE_SID参数匹配。srvctladddatabase-ddatabase_name[-mdomain_name]-ooracle_home[-sspfi…

    2025年11月1日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号