使用Jmeter测试java请求
1、性能测试过程中,有时候开发想对JAVA代码进行性能测试,Jmeter是支持对Java请求进行性能测试,但是需要自己开发、打包好要测试的代码,就能在Java请求中对该java方法进行性能测试
2、本文举的例子是Java实现通过传入两个参数,将值写入到文件中
- 开发思路
1、使用Eclipse创建Maven 项目,配置Pom文件,引入Jmeter开发Java请求所需的依赖包;
2、创建输入参数类,和测试类,然后继承JavaSamplerClient,实现四个主方法;
3、对编写好的项目进行编译、打包
4、把打包好的函数放到jmeter扩展目录,调用Java请求,对封装的Java方法进行测试;
| JDK环境 | Jmeter依赖包版本 | Maven仓库版本 |
|---|---|---|
| 1.8 | 4.0 | 3.5.3 |
Java_Sample完整项目下载方法见文章末尾介绍
一、新建Maven项目
1. File》New》Project,选择Maven》Maven Project,一直点击Next

2. 配置Pom文件,Pom文件配置的Jmeter4.0版本,只要保存了Pom文件,系统就会自动下载和关联相应的jar包,Pom配置文件如下:
3. 保存Pom文件之后,系统会自动下载关联的依赖文件,会用到的为ApacheJMeter_core-4.0.jar和ApacheJMeter_java-4.0.jar如下图:
保存前:
保存后:
4. 此时,由于对pom文件进行了修改,项目顶层会出现一把×,并且编译可能就会报错,需要执行Maven》Update Project更新外部依赖的Jar包
更新前:
更新后,编译、打包正常:
二、编写输入参数类、测试类
1. 输入参数类,该类就是被测试的java方法,主要是实现将参数写入到文件,代码如下:
2. 测试类,首先在com.xiet.Java_Sample包下创建一个类,类名为Jmeter_Test,需要继承JavaSamplerClient类,然后实现父类的四个方法,和一个main方法
main主方法主要是用来本地调试,用来测试封装的Java方法是否功能正常,如果能实现正常功能,就可以进行编译、打包在Jmeter中进行调用

setupTest方法为初始化方法,实际运行时每个线程仅执行一次,在测试方法运行前执行,默认置空即可

runTest方法为测试方法,该方法用来传入输入的参数,然后调用参数类,进行测试

teardownTest方法为结束方法,实际运行时每个线程仅执行一次,在测试方法结束后执行,默认置空即可

3. getDefaultParameters方法为设置传入的参数,可以设置多个,已设置的参数会显示到Jmeter的参数列表中,如下所示:
三、编译、打包
1. 编写代码完成,就可以进行编译、打包操作了,右键点击项目》Run As》Maven build
2. 在Goals中输入package,然后点击Apply》Run执行编译,打包操作
3. 编译打包完成,在target目录会生成一个jar包,如下图所示

四、验证开发的函数是否正常
1. 首先把Java_Sample_0.1.jar函数放到jmeter的\lib\ext目录
2. 然后启动Jmeter,线程组》添加》Sample》Java请求
3. 在类名称中选择封装的Java类,为com.xiet.Java_Sample.Jmeter_Test,该类名称为包名+类名
4. 本次设置2线程,2循环,点击执行按钮,执行结果如下:

完整源码如下
***
如果文章对你有帮助,欢迎关注本人公众号,公众号与本平台文章同步,方便大家查阅,本人会持续推出与测试有关的文章,与大家分享测试技术,每一篇原创文章都是用心编写,杜绝抄袭复制
QQ技术交流群:加群请输入验证信息 博客园

微信二维码关注公众号:

关注之后,回复资源下载,即可获取本人共享的各种资源下载地址

使用Jmeter测试java请求的更多相关文章
- 第二篇--Jmeter测试Java请求
前提:需要准备eclipse作为开发工具,安装jdk,准备完毕,接下来开工喽! 1.新建Java工程BMIrisJNIJarTest,新建lib目录,将Jmeter安装目录下lib/ext包下的Apa ...
- jmeter(二十二)jmeter测试Java请求
目的:对Java程序进行测试 目录 一.核心步骤 二.实例 三.JMeter Java Sampler介绍 四.自带Java Request Sampler 一.核心步骤 1.创建一个Java工程: ...
- jmeter的http post请求与测试Java请求
1.jmeter 测试Java请求 1.1 建立测试类,在被测程序中添加测试类 1.2 将测试程序打包,打成不可运行的包 1.3 将打好的包,放在$JMETER_HOME/lib/exts下面,把测试 ...
- 转:应用JMeter测试solr请求
使用JMeter测试solr请求 一.安装JMeter 在官网http://jmeter.apache.org/download_jmeter.cgi下载JMeter 直接解压JMeter安装包 Li ...
- jmeter 的java请求代码在main方法里面执行
1.新建一个java请求执行加法类 public class TestDemo { public int Tdemo(int a,int b){ int sum = 0; sum = a+b; ret ...
- jmeter测试java代码
有时候总是要写代码的,不得不说你也得会,这不往下看 java请求了,就的写代码,那么先来实现一个类, package com.company.jemeters; public class Hello ...
- Jmeter执行Java请求
Jmeter执行Java请求(QQ交流群:577439379) 一.打开Eclipse,创建一个Java工程 二.拷贝jmeter所依赖的jar包 将jmeter中,\lib\ext目录下的Apach ...
- jmeter之java请求
通常情况下,推荐使用jmeter之java请求编写一beashell调用java代码(上篇)(推荐)编写Java 请求 有以下优势 脚本易维护 易调试 开发脚本周期短 不过网上扩展java请求文章比较 ...
- jmeter测试HTTP请求
HTTP超文本传输协议(HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议.所有的WWW文件都必须遵守这个标准.(详情参考看一下百科) HTTP发送请求有GE ...
随机推荐
- I2C的基本概念和协议
概念 I2C总线是由Philips公司开发的一种简单.双向二线制同步串行总线.它只需要两根线即可在连接于总线上的器件之间传送信息. 主器件用于启动总线传送数据,并产生时钟以开放传送的器件,此时任 ...
- Shell中的参数传递
原文链接 我们先来定义一个方法 function methodName() { paramName1=$1 paramName2=$2 paramName3=$3 # 依此类推,参数是从1开始标号,而 ...
- 【原创】基于RBI的性能测试理念,通过jmeter快速定位接口最大并发用户数
测试工具:jmeter v_5.2 测试对象:某网站的物料获取接口,需登录后操作 测试目的:快速定位该接口最大并发用户数 思路&步骤: 1.模拟一个场景,某天临近下班,主管突然过来让你测下你们 ...
- git的cd命令
这个命令是进入某个文件夹的命令.进入文件夹后可以对文件夹中的文件进行一系列操作.
- poj - 2096 概率dp (找bug)
题意:一个人一天只能找1个bug ,这个bug属于s个子系统中的某一个子系统,属于n种bug 中的某一种 ,求 这个人找出n种bug ,并且s个系统都bug的期望 (每个系统的一定可以找出bug) 一 ...
- 二分搜索树(Binary Search Tree)
目录 什么是二叉树? 什么是二分搜索树? 二分搜索树的基本操作 二分搜索树添加新元素 二分搜索树的遍历(包含非递归实现) 删除二分搜索树中的元素 什么是二叉树? 在实现二分搜索树之前,我们先思考一 ...
- coding++:Semaphore—RateLimiter-漏桶算法-令牌桶算法
java中对于生产者消费者模型,或者小米手机营销 1分钟卖多少台手机等都存在限流的思想在里面. 关于限流 目前存在两大类,从线程个数(jdk1.5 Semaphore)和RateLimiter速率(g ...
- CDN 内容分发
1,传统架构访问服务器资源: www.aiyuesheng.com/page/logo.png 这是部署在服务器上的一张图片,因为服务器部署在上海,所以在上海或周边的人访问要稍微快一点,但是,若是云南 ...
- c++中的多态机制
目录 1 背景介绍 2 多态介绍 2-1 什么是多态 2-2 多态的分类 2-3 动态多态成立的条件 2-4 静态联编和动态联编 2-5 动态多态的实现原理 2-6 虚析构函数 ...
- 浅谈C#中Tuple和Func的使用
为什么将Tuple和Func混合起来谈呢? 首先,介绍一下:Tuple叫做元组,是.Net Framwork4.0引入的数据类型,用来返回多个数值.在C# 4.0之前我们函数有多个返回值,通常是使用r ...