当前位置: 首页 > news >正文

jmeter接口导入方式

curl直接导入

1、操作页面后,F12查看接口,右击接口-copy-copy as cURL
在这里插入图片描述
2、jmeter 工具-import from cURL,粘贴上面复制的curl
在这里插入图片描述

根据接口文档导入

1、接口文档示例如下:

Path: /api/jobs/xps/exec

Method: POST

接口描述:

file 文件类型:   MultipartFile

请求参数

Headers

参数名称参数值是否必须示例备注
Authorizationtokentoken权限认证
access_signxxx访问签名

Body

参数名称参数类型是否必须示例备注
titletext测试标题作业标题
fileSuffixtextdocx文件类型
clientIptext172.1.1.1打印机ip
printProperties.driverNametextxsp虚拟驱动驱动名称
printProperties.portSharedtext0不共享,1共享端口是否共享
printProperties.terminalTypetextWindows终端类型
printProperties.pageCounttext10页数总量
printProperties.copyCounttext1复印数量
printProperties.papertextA4页的大小
printProperties.duplexingtextOneSided(单面)单双面
printProperties.colortextMonochrome(黑白)颜色
printProperties.pageOrientationtextportrait页方向
printProperties.documentNametext测试.docx文档名字
printProperties.isPSDrivertexttrue是否ps驱动
filefile文件文件

2、jmeter创建测试计划-线程组

2-1、线程组下面添加HTTP请求

根据接口文档输入协议、ip、端口、请求类型、接口路径、参数等
在这里插入图片描述
接口中有file类型参数,需要上传文件
在这里插入图片描述

2-2、HTTP请求下添加配置原件-请求头管理器

接口文档中请求头有权限认证的token、签名(签名每次请求都要生成新的)
在这里插入图片描述
在这里插入图片描述
签名如何生成,下方讲解

3、生成签名

3-1、线程组下面添加beanShell Sampler

在这里插入图片描述

3-2、根据签名规则编写脚本

生成访问签名
参数名说明示例值备注
clientId签名ID0ca6eaf66cbf4f2bb1db6902c9c8d915
clientSecret签名秘钥8c0a5f3388154e2c959f2bd44fc2dd66
timestamp时间戳1706859156428当前时间戳
uuid唯一ID12345678唯一值,一个签名只能使用一次
访问签名生成逻辑

1、签名值= 签名ID+“:”+签名秘钥+“:”+时间戳+“:”+唯一ID

2、 生成算法:AES ,签名参数:ECB PKCS7 128bits

3、 AES算法秘钥(aesKey):#iSn##s$olu.@@sm

4、 access_sign生成规则:用AES算法对签名值进行加密

签名脚本
// Import the Base64 class
import org.apache.commons.codec.binary.Base64;// 参数
var clientId = "0ca6eaf66cbf4f2bb1db6902c9c8d915";
var clientSecret = "8c0a5f3388154e2c959f2bd44fc2dd66";
var timestamp = new Date().getTime();
var uuid = new java.util.Random().nextInt(90000000) + 10000000;// 计算签名值
var signValue = clientId + ":" + clientSecret + ":" + timestamp + ":" + uuid;// 加密签名值
var aesKey = "#iSn##s$olu.@@sm";
var cipher = javax.crypto.Cipher.getInstance("AES/ECB/PKCS5Padding");
cipher.init(javax.crypto.Cipher.ENCRYPT_MODE, new javax.crypto.spec.SecretKeySpec(aesKey.getBytes(), "AES"));
var encryptedSign = cipher.doFinal(signValue.getBytes());// 生成访问签名 (使用 Commons Codec)
var accessSign = new String(Base64.encodeBase64(encryptedSign));// 将访问签名存储到变量中
vars.put("access_sign", accessSign);// 打印访问签名
System.out.println("access_sign: " + accessSign);

无接口文档,不是网页操作无法看到接口,抓包获取接口和参数

fiddler抓包获取

如在word文档中点击打印选择打印机后,调用了驱动打印接口,fiddler抓取到接口。
fiddler导出curl有bug缺少body,手动复制请求头和body。
在这里插入图片描述
复制所有的请求头
在这里插入图片描述
获取传参,name是参数名称,value是参数值
在这里插入图片描述
postman中输入请求方式、ip+接口、将上面复制的请求头粘贴、传参手动输入
在这里插入图片描述
在这里插入图片描述
右侧点击生成curl,将curl导入到jmeter,导入后注意修改参数token、签名、文件等数据。

相关文章:

jmeter接口导入方式

curl直接导入 1、操作页面后,F12查看接口,右击接口-copy-copy as cURL 2、jmeter 工具-import from cURL,粘贴上面复制的curl 根据接口文档导入 1、接口文档示例如下: Path: /api/jobs/xps/exec Method&#xf…...

设计模式(行为型设计模式——状态模式)

设计模式(行为型设计模式——状态模式) 状态模式 基本定义 对有状态的对象,把复杂的“判断逻辑”提取到不同的状态对象中,允许状态对象在其内部状态发生改变时改变其行为。 模式结构 Context(环境类)&…...

【Flutter学习笔记】10.3 组合实例:TurnBox

参考资料:《Flutter实战第二版》 10.3 组合实例:TurnBox 这里尝试实现一个更为复杂的例子,其能够旋转子组件。Flutter中的RotatedBox可以旋转子组件,但是它有两个缺点: 一是只能将其子节点以90度的倍数旋转二是当旋转…...

性能测试入门 —— 什么是性能测试PTS?

性能测试PTS(Performance Testing Service)是一款简单易用,具备强大的分布式压测能力的SaaS压测平台。 PTS可以模拟复杂的业务场景,并快速精准地调度不同规模的流量,同时提供压测过程中多维度的监控指标和日志记录。您…...

【机器学习】基于变色龙算法优化的BP神经网络分类预测(SSA-BP)

目录 1.原理与思路2.设计与实现3.结果预测4.代码获取 1.原理与思路 【智能算法应用】智能算法优化BP神经网络思路【智能算法】变色龙优化算法(CSA)原理及实现 2.设计与实现 数据集: 数据集样本总数2000 多输入多输出:样本特征24&#xff…...

pytorch中tensor类型转换的几个函数

目录 IntTensor转FloatTensor FloatTensor转IntTensor Tensor类型变为python的常规类型 IntTensor转FloatTensor .float函数: FloatTensor转IntTensor .int函数 Tensor类型变为python的常规类型 item函数...

深入理解Elasticsearch高效原理

在当今数据驱动的世界中,能够快速有效地存储、搜索和分析庞大数据集变得至关重要。Elasticsearch是一个强大的开源搜索和分析引擎,专为云计算中心而设计,能够提供快速的搜索功能,并且能够扩展到包含数百个服务器的集群&#xff0c…...

http和socks5代理哪个隐蔽性更强?

HTTP代理和SOCKS5代理各有其优缺点,但就隐蔽性而言,SOCKS5代理通常比HTTP代理更隐蔽。以下是它们的比较: HTTP代理: 透明性较高:HTTP代理在HTTP头中会透露原始客户端的IP地址,这使得它相对不太隐蔽。…...

邮箱的正则表达式

一、 背景 项目中要给用户发送邮件,这时候需要校验用户输入的邮箱的有有效性,这肯定用正则呀。 虽然没有统一的邮箱账号格式,但是所有邮箱都符合“名称域名”的规律。对于名称和域名的字符限制,我们可以根据项目的情况定义一个&a…...

blender插件笔记

目录 文件拖拽导入 smpl导入导出 好像可以导入动画 smpl_blender_addon导入一帧 保存pose 导入导出完整代码 文件拖拽导入 https://github.com/mika-f/blender-drag-and-drop 支持格式: *.abc*.bvh*.dae*.fbx*.glb*.gltf*.obj*.ply*.stl*.svg*.usd*.usda*.…...

解释关系型数据库和非关系型数据库的区别

一、解释关系型数据库和非关系型数据库的区别 关系型数据库和非关系型数据库在多个方面存在显著的区别。 首先,从数据存储方式来看,关系型数据库采用表格形式,数据存储在数据表的行和列中,且数据表之间可以关联存储,…...

YAML-02-yml 配置文件 java 整合使用 yamlbeans + snakeyaml + jackson-dataformat-yaml

java 中处理 yml 的开源组件是什么? 在Java中处理YAML(YAML Aint Markup Language)格式的开源组件有很多,其中一些比较常用的包括: SnakeYAML: SnakeYAML 是一个Java库,用于解析和生成YAML格式…...

【综述+LLMs】国内团队大语言模型综述:A Survey of Large Language Models (截止2023.11.24)

Github主页: https://github.com/RUCAIBox/LLMSurvey 中文版v10:https://github.com/RUCAIBox/LLMSurvey/blob/main/assets/LLM_Survey_Chinese.pdf 英文版v13: https://arxiv.org/abs/2303.18223 解析:大语言模型LLM入门看完你就懂了(一&…...

开始喜欢上了runnergo,JMeter out了?

RunnerGo是一款基于Go语言、国产自研的测试平台。它支持高并发、分布式性能测试。和JMeter不一样的是,它采用了B/S架构,更灵活、更方便。而且,除了API测试和性能测试,RunnerGo还加上了UI测试和项目管理等实用功能,让测…...

LLM - 大语言模型的分布式训练 概述

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://blog.csdn.net/caroline_wendy/article/details/136924304 大语言模型的分布式训练是一个复杂的过程,涉及到将大规模的计算任务分散到多个计算节点上。这样做的目的是为了处…...

Spring Cloud Alibaba 整合Seata分布式事务

目录 前言步骤引入相关maven依赖添加相关配置Client端配置注册中心Server端配置注册中心Seata-Server相关配置启动seata-server 使用方法Seata AT 模式整体机制 步骤初始化表结构标记注解GlobalTransactional 总结 前言 在数字化转型的浪潮下,企业业务系统的复杂度…...

unity 多屏幕操作

想了解基础操作请移步:(重点是大佬写的好,这里就不再赘述) Unity 基础 之 使用 Display 简单的实现 多屏幕显示的效果_unity display-CSDN博客 在panel上也可以通过获取 Canvas,来达到切换多屏幕的操作, …...

4、Jenkins持续集成-用户权限和凭证管理

文章目录 一、用户权限管理1、安装用户权限管理插件2、开启权限全局安全配置3、创建角色4、创建用户5、给用户分配角色6、创建项目测试权限二、凭证管理1、安装凭证管理插件2、安装Git插件和工具2.1 用户密码类型2.2 SSH密钥类型一、用户权限管理 利用Role-based Authorizatio…...

K8s-网络原理-中篇

引言 本文是《深入剖析 K8s》的学习笔记,相关图片和案例可从https://github.com/WeiXiao-Hyy/k8s_example中获取,欢迎 ⭐️! 上篇主要介绍了 Flannel 插件为例,讲解了 K8s 里容器网络和 CNI 插件的主要工作原理。还有一种“纯三层”的网络方…...

vue基础——java程序员版(vue路由)

1、引入路由 在控制台执行vue ui,在插件市场里可以找到vue-router并导入。 ​ 一般情况下,vue会自动在main,js中引入vue-router,如下: import Vue from vue import App from ./App.vue import ./plugins/element.js import rou…...

linux之kylin系统nginx的安装

一、nginx的作用 1.可做高性能的web服务器 直接处理静态资源(HTML/CSS/图片等),响应速度远超传统服务器类似apache支持高并发连接 2.反向代理服务器 隐藏后端服务器IP地址,提高安全性 3.负载均衡服务器 支持多种策略分发流量…...

51c自动驾驶~合集58

我自己的原文哦~ https://blog.51cto.com/whaosoft/13967107 #CCA-Attention 全局池化局部保留,CCA-Attention为LLM长文本建模带来突破性进展 琶洲实验室、华南理工大学联合推出关键上下文感知注意力机制(CCA-Attention),…...

模型参数、模型存储精度、参数与显存

模型参数量衡量单位 M:百万(Million) B:十亿(Billion) 1 B 1000 M 1B 1000M 1B1000M 参数存储精度 模型参数是固定的,但是一个参数所表示多少字节不一定,需要看这个参数以什么…...

【HarmonyOS 5.0】DevEco Testing:鸿蒙应用质量保障的终极武器

——全方位测试解决方案与代码实战 一、工具定位与核心能力 DevEco Testing是HarmonyOS官方推出的​​一体化测试平台​​,覆盖应用全生命周期测试需求,主要提供五大核心能力: ​​测试类型​​​​检测目标​​​​关键指标​​功能体验基…...

dedecms 织梦自定义表单留言增加ajax验证码功能

增加ajax功能模块&#xff0c;用户不点击提交按钮&#xff0c;只要输入框失去焦点&#xff0c;就会提前提示验证码是否正确。 一&#xff0c;模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...

MMaDA: Multimodal Large Diffusion Language Models

CODE &#xff1a; https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA&#xff0c;它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构&#xf…...

听写流程自动化实践,轻量级教育辅助

随着智能教育工具的发展&#xff0c;越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式&#xff0c;也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建&#xff0c;…...

JVM 内存结构 详解

内存结构 运行时数据区&#xff1a; Java虚拟机在运行Java程序过程中管理的内存区域。 程序计数器&#xff1a; ​ 线程私有&#xff0c;程序控制流的指示器&#xff0c;分支、循环、跳转、异常处理、线程恢复等基础功能都依赖这个计数器完成。 ​ 每个线程都有一个程序计数…...

AGain DB和倍数增益的关系

我在设置一款索尼CMOS芯片时&#xff0c;Again增益0db变化为6DB&#xff0c;画面的变化只有2倍DN的增益&#xff0c;比如10变为20。 这与dB和线性增益的关系以及传感器处理流程有关。以下是具体原因分析&#xff1a; 1. dB与线性增益的换算关系 6dB对应的理论线性增益应为&…...

MySQL的pymysql操作

本章是MySQL的最后一章&#xff0c;MySQL到此完结&#xff0c;下一站Hadoop&#xff01;&#xff01;&#xff01; 这章很简单&#xff0c;完整代码在最后&#xff0c;详细讲解之前python课程里面也有&#xff0c;感兴趣的可以往前找一下 一、查询操作 我们需要打开pycharm …...