• Jmeter自带函数不够用?不如自己动手开发一个


    每天进步一点点,关注我们哦,每天分享测试技术文章

    本文章出自【码同学软件测试】

    码同学公众号:自动化软件测试,领取资料可加:magetest

    码同学抖音号:小码哥聊软件测试

    在Jmeter的函数助手里,有很多内置的函数,比如Random、UUID、time等等。使用这些函数可以快速帮我们生成某些数据,进行一些逻辑处理。用起来非常的方便。

    但是在实际接口测试过程中,有很多的需求,Jmeter内置的函数可能并不能满足我们的需求。这个时候我们可以通过自己编写代码,扩展Jmeter的内置函数。

    比如现在想在Jmeter里添加一个简单的求和的函数,代码逻辑非常简单,大体代码如下:

    public int sum(int a, int b){
    return a + b;
    }

    接下来来看下如何把自定义的逻辑封装为Jmeter的内置函数。

    新建工程

    在idea中新建Java工程,然后把Jmeter的核心jar包ApacheJMeter_core.jar(在jmeter的lib/ext目录下可以找到)导入到工程中

    在src目录下新建package,需要注意的是package的名字必须包含".functions",比如"com.mtx.jmeter.functions",JMeter设计让一些核心的类可以在非UI的方式下运行的时候能被加载进来,这些类会被优先加载。加载这些类的时候是通过命名规则来实现的。所有实现function的类必需包含".functions",否则自定义的函数不会生效。

    创建自定义函数类

    新建一个类,继承Jmeter的抽象类AbstractFunction。在函数类里,需要定义以下属性和方法。

    属性

    自定义函数的参数名称列表,List类型

    自定义函数的名称,String类型

    保存用户输入数据的数组,CompoundVariable[]类型

    方法

    execute:执行函数的逻辑

    setParameters:获取用户输入的参数

    getReferenceKey:返回自定义函数的名称

    getArgumentDesc:返回自定义函数所有的参数名描述

    具体代码如下:

    免费领取码同学软件测试课程笔记+超多学习资料+完整视频+面试题,可加微信:magetest

    将代码导出为jar包

    在idea中设置工程的归档品artifacts,然后通过build,将代码导出为jar包,然后放到Jmeter的lib/ext目录下,再启动Jmeter。

    函数助手中可以看到刚才的函数名称和参数。

    输入参数,运行函数,就可以看到计算结果。

    免费领取码同学软件测试课程笔记+超多学习资料+学习完整视频 ☞ 可加:magetest/关注码同学公众号:自动化软件测试

    本文著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

  • 相关阅读:
    node版本切换工具n的使用介绍
    nrm -- npm镜像源管理
    npm vs npx
    Dnsmasq MacOS使用介绍
    Java动态生成类以及动态添加属性
    mysql表名忽略大小写问题记录
    psotgresql之大小写
    java 按字节读写二进制文件(Base64编码解码)
    java解析复杂json:JSONObject 和 JSONArray的使用
    URL编码:怎样读取特殊字符
  • 原文地址:https://www.cnblogs.com/testfan2019/p/16449672.html
Copyright © 2020-2023  润新知