JMeter —— Jar包性能测试 完整流程教学

2023-10-27

本文只使用简单用例演示项目打包为Jar并上JMeter测试的整个过程,关于高级用法请看官方文档
官方文档链接:http://jmeter.apache.org/usermanual/

一、下载JMeter

官网链接:https://jmeter.apache.org/download_jmeter.cgi
网盘链接(密码 31fs): https://pan.baidu.com/s/19QPDuMBKpvBcP7K6btCNZQ
image.png

二、解压并配置环境变量

① 解压压缩包到某目录

这里我放在D盘下了。 image.png

② 配置环境变量

新增JMeter_HOME系统变量
变量值填写压缩包解压路径
image.png

新增Path变量
%JMETER_HOME%\lib\jorphan.jar;
%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;
image.png

③ 配置JMeter依赖目录

修改JMeter根目录\bin下的jmeter.properties文件
将#plugin_dependency_paths=…/dependencies/lib;…/app1/;…/app2/一项前面的#去掉即可
然后在JMeter根目录下创建dependencies/lib 文件夹,该文件夹将用于存放Jar依赖包
image.png

三、启动JMeter

进入JMeter根目录\bin,点击jmeter.bat即可启动。
进去后可以修改软件皮肤及软件语言。
image.png

四、项目引入JMeter

① 依赖引入

    <dependency>
        <groupId>org.apache.jmeter</groupId>
        <artifactId>ApacheJMeter_java</artifactId>
        <version>5.4.1</version>
    </dependency>
    <dependency>
        <groupId>org.apache.jmeter</groupId>
        <artifactId>ApacheJMeter_core</artifactId>
    <version>5.4.1</version>

② 测试类编写

public class Main implements JavaSamplerClient {

    // 自测执行效果
    public static void main(String[] args) {
        Arguments arguments = new Arguments();
        JavaSamplerContext context = new JavaSamplerContext(arguments);
        Main test = new Main();
        test.setupTest(context);
        for (int i = 0 ; i < 1 ; i++){
            test.runTest(context);
        }
        test.teardownTest(context);
    }

    // 第一步:接收JMeter传入参数
    @Override
    public Arguments getDefaultParameters() {
        return null;
    }

    // 第二步:预设测试参数
    @Override
    public void setupTest(JavaSamplerContext javaSamplerContext) {

    }

    // 第三步:执行实际测试方法
    @Override
    public SampleResult runTest(JavaSamplerContext javaSamplerContext) {
        SampleResult result = new SampleResult();
        result.sampleStart();
        try {
            // TODO 具体测试内容
            result.setSuccessful(true);
        }catch (Throwable throwable) {
            result.setSuccessful(false);
        }
        result.sampleEnd();
        
        return result;
    }

    // 第四步:测试正式结束前执行
    @Override
    public void teardownTest(JavaSamplerContext javaSamplerContext) {

    }
}

③ 带依赖方式打包为Jar

idea打开项目 -> 菜单栏File -> 下拉栏Project Structure
image.png

主要进行两步操作,一是以带依赖方式导出Jar,二是指定Jar包导出位置,设置为后点击OK即可。
image.png

之后点击idea菜单栏->Build->Build Artifacts->Build,然后在指定导出位置可以找到一个out文件夹。
这里我使用sample模块导出的Jar,文件夹名同测试Jar名,示例为sample.jar。 image.png

五、JMeter引Jar包并进行测试

① 将测试类Jar放入JMeter根目录\lib\ext文件夹下

在这里插入图片描述

② 将其他依赖包放入JMeter根目录\dependencies\lib文件夹下

注意剔除测试类Jar(sample.jar)
image.png

六、启动JMeter并执行Jar测试

① 指定测试Jar

打开D:\apache-jmeter-5.4.1\bin下的jmeter.bat,双击Test Plan并指定Jar包地址。
image.png

② 新增线程组

右键Test Plan新增线程组。
image.png

设置线程数及测试方法执行次数。
在这里插入图片描述

③ 新增Java Request

右键线程组新增Java Request
image.png

指定Main类为测试类
image.png

④ 新增测试报告

右键Java Request添加所需报告。
在这里插入图片描述

⑤ 执行任务并查看报告

image.png

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JMeter —— Jar包性能测试 完整流程教学 的相关文章

随机推荐

  • 模拟开关选型、多路复用器选型

    只列举常用的 芯片均出自TI ADI SGM Nexperia等 国产只考虑CH 泌恒 个人整理 tb均能买到 如有纰漏欢迎纠错
  • 残差网络、Dropout正则化、Batch Normalization浅了解

    残差网络 为什么需要残差网络 残差网络的目的是为了解决深度神经网络在训练过程中遇到的退化问题 即随着网络层数的增加 训练集的误差反而增大 而不是过拟合 残差网络的优点有以下几点 残差网络可以有效地缓解梯度消失或爆炸的问题 因为跳跃连接可以提
  • Python中如何将浮点型数据转换成整型

    在 Python 中 可以使用内置函数 int 将浮点型数据转换为整型 例如 a 3 14 b int a print b 输出结果为 3 注意 转换为整型时 会将浮点数四舍五入到最接近的整数
  • Android 创建淡入淡出动画的详解

    博主前些天发现了一个巨牛的人工智能学习网站 通俗易懂 风趣幽默 忍不住也分享一下给大家 点击跳转到网站 介绍 淡入淡出动画 也称为 叠化 逐渐淡出一个 View 或 ViewGroup 同时淡入另一个 此动画适用于您希望在应用中切换内容或视
  • 华为机考 创建二叉树 javascript

    请按下列描达构建一颗二叉树 并返回该树的根节点 1 先创建值为 1的根结点 根节点在第0层 2 然后根据operations依次添加节点 operations i height index 表示对第 height 层的第index 个节点n
  • 适合小白入门Spark的全面教程

    问题导读1 spark有哪些使用场景 2 spark有包含哪些组件 3 spark在哪些厂商已经应用 4 spark如何实现地震检测 Apache Spark是一个用于实时处理的开源集群计算框架 它是Apache软件基金会中最成功的项目 S
  • python学习3. 无重复字符的最长子串(滑动窗口)

    makcooo 2019 04 19 15 47 32 271 收藏 分类专栏 python 版权 给定一个字符串 请你找出其中不含有重复字符的 最长子串 的长度 示例 1 输入 abcabcbb 输出 3 解释 因为无重复字符的最长子串是
  • impala对元数据的界面更新操作

    执行 impala shell 即能进入界面操作sql 如果在hive更新了数据之后 而在impala中却无法看到更新后的数据的话 意味着impala里元数据信息还没有刷新 此时在impala操作界面里 执行 invalidate meta
  • 随机数生成方法及其应用

    目录 一 前言 二 伪随机数发生器介绍 三 均匀随机数发生器 四 任意概率分布的随机数发生器 五 产生特定要求的随机数 六 参考资料 一 前言 最近公司的一个项目 需要对一个功能模块进行性能验证 具体什么模块就不说了 验证过程中需要生成大量
  • 2022 年 5 个新 sudo 功能

    导读 最近的 sudo 版本增加了新的功能 使你能够观察和控制以前隐藏的问题 当你想授予你的一些用户管理权限 同时控制和检查他们在你的系统上做什么时 你会使用 sudo 然而 即使是 sudo 也有相当多不可控的地方 想想给予 shell
  • G1收集器特质以及分代理论

    特征 被视为JDK1 7以上版本Java虚拟机的一个重要进化特征 它具备以下特点 并行与并发 G1能充分利用CPU 多核环境下的硬件优势 使用多个CPU CPU或者CPU核心 来缩短Stop The World停顿时间 部分其他收集器原本需
  • 3dsmax Node Event System

    Node Event System 3dsmax 节点事件系统 https help autodesk com view MAXDEV 2022 ENU guid GUID 7C91D285 5683 4606 9F7C B8D3A7CA5
  • Linux网络——PXE高效批量网络装机

    Linux网络 PXE高效批量网络装机 一 PXE远程安装服务 1 PXE批量部署的优点 2 搭建PXE网络体系的安装条件 二 PXE 安装进行前的配置 1 PXE装机所需的文件 2 搭建 PXE 过程中使用的服务和程序 DHCP服务 vs
  • Linux上安装JDK、mysql、tomcat,以及将springboot项目部署到Linux上

    安装jdk 1下载jdk并放入linux系统 2解压 mkdir usr local java 创建文件夹 等下就将jdk解压到这里 tar zxvf jdk 8u181 linux x64 tar gz C usr local java
  • 最新模拟登录12306(破解12306验证码)

    最新模拟登录12306 破解12306验证码 重点 对12306验证码的破解 仅供学习交流 请勿 1 找到验证码的图片信息 2 点开headers查看 不难发现是经过base64加密的图片 但是没有请求的url 3 再查看分析发现 上面的一
  • 时序预测

    时序预测 Matlab实现CNN XGBoost卷积神经网络结合极限梯度提升树时间序列预测 目录 时序预测 Matlab实现CNN XGBoost卷积神经网络结合极限梯度提升树时间序列预测 效果一览 基本描述 程序设计 参考资料 效果一览
  • OL-CC:首个众包形式、人工生成的开源中文对话指令集

    数据是训练大模型必不可少的 燃料 但目前的数据集由不同的机构构建 存储分散 难以整合 高质量数据集的建设成本高昂 当前由于商业竞争等原因 导致数据上形成了各自为战的局面 大家无法将分散的数据整合到一起发挥更大的作用 2 月底 智源研究院发布
  • mycat2.0 分库分表报错 3002 - ERROR-CODE: [MYCAT-3002][ERR_FETCH_METADATA] MetadataManager init fail

    1 安装好mycat2 0之后 执行sql进行分库分表 DROP TABLE sys user CREATE TABLE sys user id bigint 0 NOT NULL AUTO INCREMENT COMMENT id use
  • 程序员在囧途之垃圾创业团队 .

    转载地址 https yq aliyun com articles 48175 utm campaign wenzhang utm medium article utm source QQ qun 2017316 utm content m
  • JMeter —— Jar包性能测试 完整流程教学

    本文只使用简单用例演示项目打包为Jar并上JMeter测试的整个过程 关于高级用法请看官方文档 官方文档链接 http jmeter apache org usermanual 一 下载JMeter 官网链接 https jmeter ap