![9c5cf88b9a68ded040494460b697cec4.png](https://i-blog.csdnimg.cn/blog_migrate/b031bca8c48ed00c701811adc5bf78c3.png)
一、概述
在使用JMeter的开发脚本的过程中,我们往往需要去执行一些工具本身未提供的方法,比如获取MD5加密结果,对于这类情况,我们可以通过BeanShell去实现,但是这样会比较麻烦,针对此类经常需要使用,但是又不想新建BeanShell的情况,我们可以使用二次开发函数助手来实现。
在JMeter中,函数是可以填充测试树中任何采样器或其他元素的字段的特殊值,因此使用起来会非常灵活。
下面我们以创建一个生成MD5码的函数助手为例,来给大家进行介绍。
二、创建MD5函数助手
在src/functions对应的包下创建类MD5,可以直接复制包下其他已有类。可以看到我们的MD5类继承自AbstractFunction,我们需要做的就是去实现4个方法
![23c8be1892bf73da38c5d44ef28c88c6.png](https://i-blog.csdnimg.cn/blog_migrate/3d69bc5b214bc7a848c1ca43a6184b5e.jpeg)
1、getReferenceKey
此方法在函数助手对话框选择对应函数助手时调用,对应函数名称
![aaf31669781f0cbaf53877c18766ea27.png](https://i-blog.csdnimg.cn/blog_migrate/bc0a9639bf422623ac15d423ba7b764b.jpeg)
![62d3c39a53814cf6b17338f28e34d4ba.png](https://i-blog.csdnimg.cn/blog_migrate/3b19d03f6a5ba7a7b7838b89ff6f902c.jpeg)
对应的本地化文件在src/core/src/main/resources/org/apache/jmeter/resources/messages.properties下,添加对应的key即可
![fafa7f318cc8756052b9031e6fb2ad86.png](https://i-blog.csdnimg.cn/blog_migrate/17518403e6429dfcb6431123d8380fb3.jpeg)
![739424d5d8cddb06ff4cbc24141a7817.png](https://i-blog.csdnimg.cn/blog_migrate/e61740407f674dafc392f963e6b1417e.jpeg)
- 当然,偷懒的话,直接使用desc.add("对应的desc")添加也可以。
- setParameters
此方法在执行函数时调用,主要用于对输入参数做检验等
![b4d526846995212e8e6a0efedc828047.png](https://i-blog.csdnimg.cn/blog_migrate/0599f29a0d60994332682766f64caac9.jpeg)
execute
此方法在执行函数时调用,用于执行具体的逻辑及保存结果至相应的变量中
![61be3ab1282b301ee9359ad835e8e535.png](https://i-blog.csdnimg.cn/blog_migrate/b8cf0e09fb371e28b73a69056a49b6e0.jpeg)
每一篇文章都来自鲁德精心原创,如果文章能帮到你,欢迎转发和点赞,让更多的朋友受益!跟着鲁德一起,每天进步一点点,终会质变!让你面试拿高薪!