首页 > 其他分享 >MeterSphere 接口自动化插件基础开发教程

MeterSphere 接口自动化插件基础开发教程

时间:2023-01-18 18:07:56浏览次数:82  
标签:插件 Step plugin MeterSphere 教程 json metersphere JMeter

背景介绍

从 MeterSphere v1.13 版本开始,接口自动化支持了通过添加插件的方式进行扩展。针对 JMeter 已有的功能或插件,只需要进行很少量的开发工作,就可以将其包装成一个 MeterSphere 上可用的插件。

在 JMeter 中使用 ​​Dummy Sampler​​ 可以构造出一个请求内容和响应内容完全自定义的请求,通过这种自定义的请求可以比较方便的对各种断言、参数提取等后置处理器进行调试。

MeterSphere 接口自动化插件基础开发教程_表单

本文将以 JMeter 中的 ​​Dummy Sampler​​ 为例,来介绍下如何开发 MeterSphere 接口自动化插件。

Step 0. 项目初始化

初始化一个 maven 项目,并添加如下依赖。

pom.xml


​<!-- 省略开头 -->​

​<​​​​dependencies​​​​>​

​<!-- 公共插件包,定义了执行数据的基类和公共接口 -->​

​<​​​​dependency​​​​>​

​<​​​​groupId​​​​>io.metersphere</​​​​groupId​​​​>​

​<​​​​artifactId​​​​>metersphere-plugin-core</​​​​artifactId​​​​>​

​<​​​​version​​​​>1.0.1</​​​​version​​​​>​

​<​​​​scope​​​​>provided</​​​​scope​​​​>​

​</​​​​dependency​​​​>​

​<!-- 原始的 JMeter DummySampler 插件 -->​

​<​​​​dependency​​​​>​

​<​​​​groupId​​​​>kg.apc</​​​​groupId​​​​>​

​<​​​​artifactId​​​​>jmeter-plugins-dummy</​​​​artifactId​​​​>​

​<​​​​version​​​​>0.4</​​​​version​​​​>​

​<​​​​scope​​​​>provided</​​​​scope​​​​>​

​</​​​​dependency​​​​>​

​</​​​​dependencies​​​​>​

​<!-- 省略结尾 -->​



Step 1. 生成前端表单

在 JMeter 中创建一个包含 DummySampler 步骤的脚本,对照这 JMeter 中该步骤的配置页面,使用 ​​表单生成器​​ 生成前端表单的 json 文件。

MeterSphere 接口自动化插件基础开发教程_表单_02

点击表单生成器右上角的 ​​生成JSON​​​ 按钮,将内容保存到 src\main\resources\json\ui_dummy.json 文件中;点击右上角的 ​​生成Options​​ 按钮,将内容保存到 src\main\resources\json\ui_form.json 文件中。对于没有默认值的字段,可以手动编辑下 json 文件增加一个空的默认值,避免出现空指针异常。

MeterSphere 接口自动化插件基础开发教程_表单_03

Step 2. 初始化插件资源

在 src\main\java\io\metersphere\plugin\dummy\UiScriptApiImpl.java 中使用上面生成的表单 json,对插件内容进行初始化。

MeterSphere 接口自动化插件基础开发教程_初始化_04

Step 3. 转换生成 JMeter HashTree

创建与上一步对应的初始化 UiScript 对象时指定类名一致的 io.metersphere.plugin.dummy.sampler.MsDummySampler 类,在该类中完成前端表单数据到 JMeter HashTree 的转换。

MeterSphere 接口自动化插件基础开发教程_json_05

MeterSphere 接口自动化插件基础开发教程_初始化_06

生成 DummySampler 对象时,guiclass、testclass 及各个属性对应的字段,可以通过创建一个包含 DummySampler 步骤的 jmx 脚本,以文本模式打开脚本快速获取。

MeterSphere 接口自动化插件基础开发教程_初始化_07

Step 4. 收尾打包

增加一个与打包后的 jar 包同名的文件 src\main\resources\metersphere-plugin-DummySampler-1.0.0-jar-with-all-dependencies 指定插件入口。再补充一些其他的必要内容后就可以打包了。

MeterSphere 接口自动化插件基础开发教程_json_08

Step 5. 上传测试

打包后将 target\metersphere-plugin-DummySampler-1.0.0-jar-with-all-dependencies.jar 在 MeterSphere 的插件管理页面进行上传,上传成功后就可以在接口自动化中看到插件提供的步骤。

MeterSphere 接口自动化插件基础开发教程_json_09

MeterSphere 接口自动化插件基础开发教程_表单_10

该插件已提交到了 ​​https://github.com/metersphere/metersphere-plugin-DummySampler​​ 仓库。

标签:插件,Step,plugin,MeterSphere,教程,json,metersphere,JMeter
From: https://blog.51cto.com/u_15922911/6019366

相关文章