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)
上一篇 2022年5月30日 下午9:16
下一篇 2022年5月30日 下午9:16


相关推荐

  • 金融公司2014年度工作总结与2015年度工作计划

    金融公司2014年度工作总结与2015年度工作计划正文:一、 员工个人对全年重点工作、核心绩效指标进行罗列。自6月入职以来参加730、825、917、1015、1126的版本测试,测试的各个功能点,前台涉及的测试功能点包括广发、汇添富的申购、赎回,基金双持,票据购买、冻结收银台、理财管理、后台功能点包括用户开户信息查询等各种报表处理、申购异常处理、赎回异常处理、强制赎回等异常处理、定时任务管理、日常管理包括基础配置管理、基金管理中的…

    2022年7月26日
    9
  • python自动化测试—Python自动化框架及工具

    python自动化测试—Python自动化框架及工具1概述手续的关于测试的方法论,都是建立在之前的文章里面提到的观点:功能测试不建议做自动化接口测试性价比最高接口测试可以做自动化后面所谈到的测试自动化也将围绕着接口自动化来介绍。本系列选择的测试语言是python脚本语言。由于其官方文档已经对原理有了比较清楚的解释,本文就不做一些多余的翻译工作了。偏向于实战部分,而且为了偏向实战,也会结合IDE工具和项目组织来进行讲解。理由如下:1.脚本语言,开发和迭代的效率极高2.第三方的扩展库极多,有很我现成的工具可以使用在正式进

    2025年5月28日
    4
  • vue解决跨域问题用后端配合吗_vue图片跨域解决

    vue解决跨域问题用后端配合吗_vue图片跨域解决vue解决跨域问题

    2025年12月15日
    7
  • 各种系统架构图与详细说明

    各种系统架构图与详细说明共享平台逻辑架构设计 如上图所示为本次共享资源平台逻辑架构图,上图整体展现说明包括以下几个方面:1应用系统建设本次项目的一项重点就是实现原有应用系统的全面升级以及新的应用系统的开发,从而建立行业的全面的应用系统架构群。整体应用系统通过SOA面向服务管理架构模式实现应用组件的有效整合,完成应用系统的统一化管理与维护。2应用资源采集整体应用系统资源统一分为两类,具体包…

    2022年6月6日
    171
  • 深入理解JVM的垃圾回收机制

    深入理解JVM的垃圾回收机制上一篇博客介绍了Java运行时内存的各个区域。对于程序计数器、虚拟机栈、本地方法栈这三个部分而言,其生命周期与相关线程有关,随线程而生,随线程而灭。并且这三个区域的内存分配与回收具有确定性,因为当方法结束或者线程结束时,内存就自然跟着线程回收了。因此本篇文章所讲的有关内存分配和回收关注的是Java堆与方法区这两个区域。1、如何判断对象已“死”Java堆中存放着几乎所有的对象实例,垃圾回收器…

    2022年4月29日
    41
  • POJ 3280 Cheapest Palindrome (DP)

    POJ 3280 Cheapest Palindrome (DP)

    2022年1月5日
    47

发表回复

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

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