前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用Jmeter测试java请求

使用Jmeter测试java请求

作者头像
jmeter技术研究
发布2019-10-19 11:54:59
1.9K0
发布2019-10-19 11:54:59
举报
文章被收录于专栏:jmeter相关技术交流

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

一、新建Maven项目

代码语言:javascript
复制
1. File》New》Project,选择Maven》Maven Project,一直点击Next
代码语言:javascript
复制
2. 配置Pom文件,Pom文件配置的Jmeter4.0版本,只要保存了Pom文件,系统就会自动下载和关联相应的jar包,Pom配置文件如下:
代码语言:javascript
复制
3. 保存Pom文件之后,系统会自动下载关联的依赖文件,会用到的为ApacheJMeter_core-4.0.jar和ApacheJMeter_java-4.0.jar如下图:

保存前:

保存后:

代码语言:javascript
复制
4. 此时,由于对pom文件进行了修改,项目顶层会出现一把×,并且编译可能就会报错,需要执行Maven》Update Project更新外部依赖的Jar包

更新前:

更新后,编译、打包正常:

二、编写输入参数类、测试类

代码语言:javascript
复制
1.  输入参数类,该类就是被测试的java方法,主要是实现将参数写入到文件,代码如下:
代码语言:javascript
复制
2.  测试类,首先在com.xiet.Java_Sample包下创建一个类,类名为Jmeter_Test,需要继承JavaSamplerClient类,然后实现父类的四个方法,和一个main方法

main主方法主要是用来本地调试,用来测试封装的Java方法是否功能正常,如果能实现正常功能,就可以进行编译、打包在Jmeter中进行调用

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

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

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

代码语言:javascript
复制
3. getDefaultParameters方法为设置传入的参数,可以设置多个,已设置的参数会显示到Jmeter的参数列表中,如下所示:

三、编译、打包

代码语言:javascript
复制
1. 编写代码完成,就可以进行编译、打包操作了,右键点击项目》Run As》Maven build
代码语言:javascript
复制
2. 在Goals中输入package,然后点击Apply》Run执行编译,打包操作
代码语言:javascript
复制
3. 编译打包完成,在target目录会生成一个jar包,如下图所示

四、验证开发的函数是否正常

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

完整源码如下

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-10-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 jmeter相关技术交流 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档