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

本文只使用简单用例演示项目打包为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

  • 5
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
总有你需要的: javax.security.auth.message_1.0.0.v201108011116.jar javax.security.auth.message.source_1.0.0.v201108011116.jar org.eclipse.jetty.annotations_9.1.1.v20140108.jar org.eclipse.jetty.annotations.source_9.1.1.v20140108.jar org.eclipse.jetty.client_9.1.1.v20140108.jar org.eclipse.jetty.client.source_9.1.1.v20140108.jar org.eclipse.jetty.continuation_9.1.1.v20140108.jar org.eclipse.jetty.continuation.source_9.1.1.v20140108.jar org.eclipse.jetty.deploy_9.1.1.v20140108.jar org.eclipse.jetty.deploy.source_9.1.1.v20140108.jar org.eclipse.jetty.http_9.1.1.v20140108.jar org.eclipse.jetty.http.source_9.1.1.v20140108.jar org.eclipse.jetty.io_9.1.1.v20140108.jar org.eclipse.jetty.io.source_9.1.1.v20140108.jar org.eclipse.jetty.jaas_9.1.1.v20140108.jar org.eclipse.jetty.jaspi_9.1.1.v20140108.jar org.eclipse.jetty.jaspi.source_9.1.1.v20140108.jar org.eclipse.jetty.jmx_9.1.1.v20140108.jar org.eclipse.jetty.jmx.source_9.1.1.v20140108.jar org.eclipse.jetty.jndi_9.1.1.v20140108.jar org.eclipse.jetty.jndi.source_9.1.1.v20140108.jar org.eclipse.jetty.osgi.boot_9.1.1.v20140108.jar org.eclipse.jetty.osgi.boot.jsp_9.1.1.v20140108.jar org.eclipse.jetty.osgi.boot.jsp.source_9.1.1.v20140108.jar org.eclipse.jetty.osgi.boot.source_9.1.1.v20140108.jar org.eclipse.jetty.osgi.boot.warurl_9.1.1.v20140108.jar org.eclipse.jetty.osgi.boot.warurl.source_9.1.1.v20140108.jar org.eclipse.jetty.osgi.httpservice_9.1.1.v20140108.jar org.eclipse.jetty.osgi.httpservice.source_9.1.1.v20140108.jar org.eclipse.jetty.osgi.npn.fragment_9.1.1.v20140108.jar org.eclipse.jetty.plus_9.1.1.v20140108.jar org.eclipse.jetty.plus.source_9.1.1.v20140108.jar org.eclipse.jetty.proxy_9.1.1.v20140108.jar org.eclipse.jetty.rewrite_9.1.1.v20140108.jar org.eclipse.jetty.rewrite.source_9.1.1.v20140108.jar org.eclipse.jetty.security_9.1.1.v20140108.jar org.eclipse.jetty.security.source_9.1.1.v20140108.jar org.eclipse.jetty.server_9.1.1.v20140108.jar org.eclipse.jetty.server.source_9.1.1.v20140108.jar org.eclipse.jetty.servlet_9.1.1.v20140108.jar org.eclipse.jetty.servlet.source_9.1.1.v20140108.jar org.eclipse.jetty.servlets_9.1.1.v20140108.jar org.eclipse.jetty.servlets.source_9.1.1.v20140108.jar org.eclipse.jetty.spdy.client_9.1.1.v20140108.jar org.eclipse.jetty.spdy.client.source_9.1.1.v20140108.jar org.eclipse.jetty.spdy.core_9.1.1.v20140108.jar org.eclipse.jetty.spdy.core.source_9.1.1.v20140108.jar org.eclipse.jetty.spdy.http.server_9.1.1.v20140108.jar org.eclipse.jetty.spdy.http.server.source_9.1.1.v20140108.jar org.eclipse.jetty.spdy.server_9.1.1.v20140108.jar org.eclipse.jetty.spdy.server.source_9.1.1.v20140108.jar org.eclipse.jetty.util_9.1.1.v20140108.jar org.eclipse.jetty.util.ajax_9.1.1.v20140108.jar org.eclipse.jetty.util.ajax.source_9.1.1.v20140108.jar org.eclipse.jetty.util.source_9.1.1.v20140108.jar org.eclipse.jetty.webapp_9.1.1.v20140108.jar org.eclipse.jetty.webapp.source_9.1.1.v20140108.jar org.eclipse.jetty.websocket.api_9.1.1.v20140108.jar org.eclipse.jetty.websocket.api.source_9.1.1.v20140108.jar org.eclipse.jetty.websocket.client_9.1.1.v20140108.jar org.eclipse.jetty.websocket.client.source_9.1.1.v20140108.jar org.eclipse.jetty.websocket.common_9.1.1.v20140108.jar org.eclipse.jetty.websocket.common.source_9.1.1.v20140108.jar org.eclipse.jetty.websocket.server_9.1.1.v20140108.jar org.eclipse.jetty.websocket.server.source_9.1.1.v20140108.jar org.eclipse.jetty.websocket.servlet_9.1.1.v20140108.jar org.eclipse.jetty.websocket.servlet.source_9.1.1.v20140108.jar org.eclipse.jetty.xml_9.1.1.v20140108.jar org.eclipse.jetty.xml.source_9.1.1.v20140108.jar

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值