全网最详细,Jmeter性能测试-性能进阶, 多协议实战Websocket/Dubbo(七)

news2025/4/5 17:57:15

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

Jmeter是目前主流的性能测试工具,原因除了他是开源的、免费的之外,还有它的拓展性非常强。Jmeter默认使用的协议是Http/HTTPS协议,但这并不是唯一的协议,通过加载插件,可以让Jmeter支持更多协议的脚本开发。

webservice(soap)协议

webservice是一个web的应用程序,使用xml想外界暴露可供调用的API接口。

webservice的接口标准:

SOAP(simple Object Access Protocol)是使用 http + xml的方法进行传输。;
UDDI((UnviversalDescription ,Discovery,andIntegration));
WSDL(Web Service Description Language),描述语言,基于XML;

soap是基于XML的简易协议,可使应用程序在Http之上进行信息交换。而XML本身是一种用于传输和存储数据的一种文本文件。

脚本编写
由于soap接口是使用Http+xml的,所以在jmeter中,使用http取样器也可以使用,只是消息体数据中要填入的是xml

请添加图片描述

上图的请求发起的是soap1.1版本的,soap1.1和1.2中最大的区别就是soap1.1版本的请求头必须要填SOAPAction

请添加图片描述

请添加图片描述

其次,1.1和1.2版本的请求体,xml格式的标签也略有不同。
soap1.2版本的节点名称是soap12, 而1.1时soap

请添加图片描述

Websocket 协议

websocket协议是基于TCP的一种新的网络协议,它实现了客户端和服务端全双工通信,即允许服务器主动向客户端发送消息。

websocket与http都是使用tcp协议,它们之间的区别:

http:只能客户端向服务端发起请求,服务端收到请求后进行处理再原路返回。
websocket:除了客户端可以想服务端发起请求之外,服务器也能主要想客户端发送消息。

举个例子,有些app在连接网络后,你没有做任何操作,它也会向你推送消息。
不过推送消息这个不止websocket可以做,mq也可以,这里只是说websocket支持。

与http协议族一样,websocket协议族也有两个:
ws
wss: ws + ssl证书,加密传输

websocket和socket不是同一个东西;
websocket是一个通讯协议,接口是对外暴露的;
socket是代码层面上的调用;

引入插件
安装WebSocket Samplers by Peter Doornbosch

请添加图片描述

脚本编写
websocket的取样器有以下几个:

websocket closc:关闭websocket
websocket open connection :建立一个websocket
websocket ping/pong: 测试websocket协议是否连通
websocket single read samplcr:客户端从服务端获取响应
websocket single write sampler :客户端向服务端发请求

websocket request-response sampler:同时具备向服务端发请求和获取响应的功能

建立连接
填入IP、端口、路径即可

请添加图片描述

发起请求
默认情况下,connection是选择use existing connection,意思是使用已有的连接;另一个选项setup new connection是建立一个新的连接,由于我在上面已经创建了连接,所以就选择use existing connection

请添加图片描述

在Data里填入传入的消息

请添加图片描述

获取响应
同样的是选择use existing connection,然后根据响应内容的选择对应的文本格式

请添加图片描述

以上步骤使用websocket request-response sampler可以一次性完成,操作也是一样的就不演示了。
另外建议最后都加上websocket closc取样器,关闭连接。

Dubbo 协议

Dubbo是一款高性能、轻量级的开元java RPC框架,它提供了三大核心能力:面向接口的远程方法调用、智能容错和负载均衡以及服务自动注册和发现。

引入插件
这次不能在jmeter的插件管理工具里下载了,得要额外下载。
名:jmeter-plugins-dubbo-2.7.3-jar-with-dependencies.zip

放入这个插件之后,jmeter的启动速度会慢一点,因此推荐在测试dubbo的时候才引入这个插件,其他时候就不要放进来了。

编写脚本

请添加图片描述

Protocol:选择注册中心
Address:注册中心的地址
Get Provider List: 点击获取提供者的列表,点了之后jmeter会卡死几秒钟,不用担心,别乱点!

下面这部分就是填写参数的,具体的参数请询问开发。

请添加图片描述

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

只要心中有梦想,在追求的路上不停前行,即使面对挫折和困难,也要坚信自己的能力和价值,最终绝不放弃,才能获得属于自己的辉煌成功!

人生的路途不会总是平坦,但只要你有信念、有勇气、有毅力,就能跨越千山万水,攀登高峰,最终获得属于自己的成功与荣耀!

生命中,最重要的不是你遇到了什么,而是你如何去应对。保持一颗永远向上的心,坚持自己的信念,即使跌倒也能重新站起来,才能走向属于自己的光芒与辉煌!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/417575.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

自行车及电动自行车出口美国GCC认证要求

所有进口商和美国本土制造商都必须签发普通合格证书(GCC)证明其产品符合具体规定要求。进口商和本土制造商应向认可的第三方实验室提交样品测试其产品是否符合相关安全法规。提供第三方实验室测试报告,合格证书由进口商和本土制造商提供。在外…

pytorch通过不同的维度提高cifar10准确率

各个维度通过模型通过优化器通过batchsize通过数据增强总结当前网络的博客上都是普遍采用某个迁移学习训练cifar10,无论是vgg,resnet还是其他变种模型,最后通过实例代码,将cifar的acc达到95以上,本篇博客将采用不同的维…

九龙证券|300亿空袭,港股吓懵了!

港股再度大幅回调,腾讯成了“导火索”。 当地时刻4月11日,腾讯大股东Prosus发布公告称拟再度进行回购,作为回购方案的一部分,Prosus本周将采纳行动,把9600万股腾讯股票以凭据方式移入香港中心结算系统,以便…

八、市场活动-创建

需求分析 用户在市场活动主页面,点击"创建"按钮,弹出创建市场活动的模态窗口; 用户在创建市场活动的模态窗口填写表单,点击"保存"按钮,完成创建市场活动的功能. *所有者是动态的(//在现实市场活动主页面时,就从数据库中查询出所有用户并且…

基于ChatGLM-6b+Streamlit+QDrant+DuckDuckGo搭建本地问答机器人及缓解时效性问题方案

本地部署chatglm及缓解时效性问题的思路: 模型使用chatglm-6b 4bit,推理使用hugging face,前端应用使用streamlit或者gradio。 微调对显存要求较高,还没试验。可以结合LoRA进行微调。 缓解时效性问题:通过本地数据库…

word页码从指定页开始,具体设置步骤

word页码从指定页开始,具体设置步骤1、在文档页面,以目录后第一页为页码开始页为例,也就是正文第一页,首先将鼠标光标定位到目录页最后的位置2、在【布局】选项下点击【分隔符】选项。3、在分隔符中选择【分节符】下的【下一页】。…

深度学习-第T4周——猴痘病识别

深度学习-第T4周——猴痘病识别深度学习-第T4周——猴痘病识别一、前言二、我的环境三、前期工作1、导入数据集2、查看图片数目3、查看数据四、数据预处理1、 加载数据1、设置图片格式2、划分训练集3、划分验证集4、查看标签2、数据可视化3、检查数据4、配置数据集五、搭建CNN网…

Day943.持续集成流水线 -系统重构实战

持续集成流水线 Hi,我是阿昌,今天学习记录的是关于持续集成流水线的内容。 从团队协作的角度上来看,在版本发布过程中,经常出现测试依赖开发手工生成制品、版本发布也从开发本地出版本的问题。而且项目架构如果从单体演进至组件…

MySQL-双主高可用

目录 🍁拓扑环境 🍁配置两台MySQL主主同步 🍃修改MySQL配置文件 🍃配置主从关系 🍃测试主主同步 🍁keepalived高可用 🍃keepalived的安装配置 🍃master配置 🍃slave配置 …

R -- 用psych包做因子分析

因子分析 因子分析又称为EFA,是一系列用来发现一组变量的潜在结构的办法。它通过寻找一组更小的,潜在的结构来解释已观测到的显式的变量间的关系。这些虚拟的、无法观测的变量称为因子(每个因子被认为可以解释多个观测变量间共有的方差&…

【回眸】ChatGPT Plus(GPT4体验卡)

前言 没忍住诱惑,开了个GPT4.0的会员,给大家表演一波 开通成功 开始问问题 写一个CNN疲劳驾驶监测代码,要求{使用Python语言,使用包,能成功运行,需要调用电脑摄像头,要求GUI界面有一些参数…

Python爬虫框架的介绍

爬虫框架的介绍Scrapy框架Crawley框架Portia框架Newspaper框架Python-goose框架随着网络爬虫的应用越来越多,一些爬虫框架逐渐涌现,这些框架将爬虫的一些常用功能和业务逻辑进行封装。这些框架的基础上,根据自己的需求添加少量的代码&#xf…

【操作系统 os学习笔记】

操作系统一、第一章:操作系统概述Ⅰ. 操作系统的基本概念1.操作系统的概念1.1 什么是操作系统?1.2 计算机系统的构成1.3 OS是一种系统软件1.4 OS作为系统软件,做了哪些事情2.操作系统的目标和功能2.1 目标2.2 功能3.操作系统的特征3.1 并发3.…

C#基础学习--接口

目录 什么是接口 ​编辑声明接口 实现接口 接口是引用类型 接口和as运算符 实现多个接口 实现具有重复成员的接口 多个接口的引用 派生成员作为实现 ​编辑显式接口成员实现 接口可以继承接口 什么是接口 接口是指定一组函数成员而不实现它们的引用类型 要实现一个接口…

DevOps实践分享:4个实施步骤与6个关键设计

本文介绍了普元DevOps平台在金融行业实施落地的常用方法,以及在项目管理,代码管理,构建管理,制品管理,部署管理等模块针对一些典型客户场景的关键设计。目 录01 平台简介‍‍02 实施方法‍‍‍‍‍‍03 关键设计01平…

项目管理的误区之追着别人做监工

有的项目经理拿到一个项目,上来就开始各种努力,恨不得把十八般武艺都套上去。 有的项目经理急于推进项目:“活都分出去了,我要监督大家把事情做好吧。 我先在心里设定一个目标,然后费尽心力地把大家往一处赶&#xff…

( “树” 之 DFS) 617. 合并二叉树 ——【Leetcode每日一题】

617. 合并二叉树 给你两棵二叉树: root1 和 root2 。 想象一下,当你将其中一棵覆盖到另一棵之上时,两棵树上的一些节点将会重叠(而另一些不会)。你需要将这两棵树合并成一棵新二叉树。合并的规则是:如果两…

css实现缺角功能、渐变、旋转、clip-path属性、矩形、边框、折角

文章目录1、缺角矩形2、缺角边框3、折角矩形4、clip-path属性1、缺角矩形 使用css3渐变实现缺角矩形&#xff0c;关于linear-gradient属性的介绍请移步至MDN。 ☺☺☺html部分☺☺☺ <div class"rectangle_box"><div class"left_top"></d…

【数据库】索引必知必会

什么是索引索引的好处索引的坏处创建索引的三种方式索引类型索引数据结构Hash表B树B树B树和B树的区别B树的最大优点面试题为什么索引结构默认使用B树&#xff0c;而不是B-Tree&#xff0c;Hash哈希&#xff0c;二叉树&#xff0c;红黑树?聚簇索引非聚簇索引聚簇索引和非聚簇索…

亚马逊云科技云创计划,打造创新创业生态系统

在充满着不确定性的2022年&#xff0c;电子消费市场一片哀鸿遍野&#xff0c;智能家居行业却如同逆水行舟&#xff0c;显示出稳健的发展之势&#xff0c;宣告着智能家居时代已来。在2023年3月24日举办的“智能家居&#xff0c;出海闭门会”上&#xff0c;为进一步发挥产业带潜力…