竹笋

注册

 

发新话题 回复该主题

测试开发必备技能JMeter二次开发函数 [复制链接]

1#
北京哪个医院看白癜风好 https://jbk.39.net/yiyuanzaixian/bjzkbdfyy/sfxbdf/

简介

概述

ApacheJMeter是Apache基于Java开发的开源压力测试工具

最初被设计用于Web应用测试,但后来扩展到了其他测试领域,像接口测试

但,随着IT行业的快速发展,不同企业或组织需求更加丰富,JMeter默认的功能往往不能满足所有的需求,在一些企业里,会对这款工具进行二次开发

使用前准备

JDK:Java开发工具包,是所有Java开发或项目运行的基础

IntelliJIDEA:一个进行Java项目开发的集成开发环境,也可以使用Eclipse

JMeter:下载最新版本即可,但插件开发时的依赖版本与使用的JMeter版本保持一致

函数开发

概述

JMeter自带函数库中,提供了丰富的函数,并被广泛使用,如__Random、__UUID等

可以通过菜单工具-函数助手对话框进行测试,如下图

但,不同接口测试、性能测试项目或场景中,有着不同的特性,JMeter自带的函数并不完全满足业务需要。

基于JMeter的自定义函数开发,就能满足各类特性业务的需求,在实际的测试中有着非常重要的应用

自定义函数

核心API

自定义函数必须继承AbstractFunction类,并重写父类的4个方法

execute,函数执行逻辑,必需,自定义函数的核心逻辑,并返回经过处理后的内

getReferenceKey,函数名称,必需,返回一个字符串,表示在JMeter中使用自定义函数的函数名,一般以双下划线开头,如__Operate、__IDNumber

setParameters,设置函数接收参数值,如果自定义函数有参数,用于接收调用时传递过来的参数,注意使用时,字符串参数不要加双引号

getArgumentDesc,函数参数描述,如果自定义函数有参数,用于返回函数参数说明

开发步骤

创建Maven项目:使用IDEA创建一个Maven项目

添加依赖:在项目的pom.xml中依赖ApacheJMeter_java、ApacheJMeter_core,注意与使用的JMeter版本保持一致,依赖见附件

自定义函数:添加自定义函数,继承AbstractFunction类,并覆写其4个方法execute方法:添加插件逻辑getReferenceKey方法:返回自定义名称函数,用于在JMeter中调用setParameters方法:获取传递的参数getArgumentDesc:返回参数描述注意,自定义函数必须在*.functions包下

打包:使用Maven工具将插件打包成。jar文件,在项目下的target目录中

发布:将打包的。jar文件拷贝到JMeter安装目录的lib/ext目录中

重启JMeter:重新启动JMeter,此时就可以JMeter中使用。jar包中自定义的函数

示例一:开发一个简单的运算函数

函数名:__Operate

参数:分别为运算符、操作数1、操作数2

代码:

package

分享 转发
TOP
发新话题 回复该主题