Jmeter接口测试 —— jmeter对图片验证码的处理

jmeter对图片验证码的处理
在web端的登录接口经常会有图片验证码的输入,而且每次登录时图片验证码都是随机的;当通过jmeter做接口登录的时候要对图片验证码进行识别出图片中的字段,然后再登录接口中使用;
通过jmeter对图片验证码的识别方法
1、通过ocrserver工具识别图片验证码;
网盘下载ocrserver工具
如下图:解压后双击OcrServer.exe;然后电脑的右下角会显示该服务的IP和端口


2、在jmeter中发送获取该验证码图片的接口;如下图

3、在获取验证码图片的接口下面添加监听器》保存响应到文件;如下图:

现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:110685036

4、再取样器中再添加JSR223 Sampler;注释一下该取样器是把图片转换成base64格式;并编写代码;如下图:
SampleResult.setIgnore();import java.io.*;
import org.apache.commons.codec.binary.Base64;String image=vars.get("png");byte[] data = null;try {InputStream in = new FileInputStream(image);data = new byte[in.available()];in.read(data);in.close();} catch (IOException e) {e.printStackTrace();
}Base64 base64=new Base64();
vars.put("base64",base64.encodeToString(data));
//return image;

5、在添加一个HTTP请求,用来调用OcrServer工具,IP地址为127.0.0.1,端口为12349,post请求,在body中引用base64;如下图:

6、在验证码识别请求下再添加一个json提取器;把识别到的图片验证码的字段提取出来;如下图:
识别图片验证码的字段为json格式;如下图

在json提取器中通过jsonpath方法提取出code的值

7、验证提取的字段是否和图片验证码上的字段一致;如下图:


8、通过第7步可以看到正确的提取出了验证码字段,然后在登录的接口调用image_code即可;

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!
相关文章:
Jmeter接口测试 —— jmeter对图片验证码的处理
jmeter对图片验证码的处理 在web端的登录接口经常会有图片验证码的输入,而且每次登录时图片验证码都是随机的;当通过jmeter做接口登录的时候要对图片验证码进行识别出图片中的字段,然后再登录接口中使用; 通过jmeter对图片验证码…...
minikube创建一个pod并暴露端口(使用docker驱动安装)
因为minikube使用service暴露端口是使用nodeIP:nodePort 而不是 localhost:nodePort 公开访问。我们只能使用kubectl的端口转发功能或者使用iptables的转发功能来实现外网服务暴露。 我这里使用shiro来举例 apiVersion: apps/v1 kind: Deployment metadata:name: shiro550 spe…...
2023国考证件照要求什么底色?证件照换背景底色的方法
2023年国家公务员考试报名已经开始了,我们在考试平台提交报名信息的时候,有一项就是需要上传证件照片,对于证件照片也会有具体的要求,比如背景底色、尺寸大小、dpi和kb大小。今天就为大家详细介绍一下关于国考证件照背景色的内容&…...
【SA8295P 源码分析 (一)】87 - SA8295P HQNX + Android 编译环境搭建指导
【SA8295P 源码分析 一】87 - SA8295P HQNX + Android 编译环境搭建指导 一、Android 编译环境搭建:Android + sa8295p-hqx-4-2-4-0_hlos_dev_la.tar.gz1.1 更新 Ubuntu 18.04 源路径1.2 安装基础编译环境1.3 设置JDK8 的环境变量1.4 配置sh为bash(默认为dash)1.5 Android 编…...
网络基本结构及数据传输方式
nternet 网络基本结构及数据传输方式根据传统的网络结构,用户的访问流程基本如下: 用户在自己的浏览器中输入要访问的网站的域名 浏览器向本地DNS请求对该域名的解析 本地DNS将请求发到网站授权的DNS服务器。 授权DNS将服务器的IP地址作为解析结果送给本…...
从实体经济和数字经济融合展开,思考商业模式的变化
对于《关于构建数据基础制度更好发挥数据要素作用的意见》想必大家已经不陌生了,之前的文章中也围绕数据要素说了很多东西,数据、数字化、数字经济之类的已经称得上是绝大部分人对未来发展方向的共识,不过今天想从这个《意见》出发࿰…...
Python 框架学习 Django篇 (四) 数据库增删改查(CURD)
在上一章结尾我们了解到如采用前后端开发分离的架构模式开发,后端几乎不负责任何展现界面的工作,只负责对数据进行管理 ,对数据的管理主要体现在: (增加、修改、删除、列出 )具体的接口参考大佬的文档BYSM…...
关于错误码
初学编程,在C语言中定义错误码,是使用宏: #define SUCCESS 0 //成功 #define FAILED 1 //失败 后来知道,用枚举更适合,因为宏的名声实在不好,而枚举可以帮你自动编号,减少…...
Linux | gcc/g++的使用
目录 前言 一、程序的翻译过程 1、预编译 2、编译 3、汇编 4、链接 (1)链接做了什么 (2)动态链接 (3)静态链接 (4)如何使用gcc进行动态链接和静态链接 前言 本章主要带着大…...
了解容器运行时安全:保护你的容器应用
前言 容器是一种虚拟化技术,用于封装和运行应用程序及其依赖项,以便在不同的计算环境中保持一致性和可移植性。自2013年容器诞生至今,容器Docker镜像的下载量超20亿,虽然容器行业发展如火如荼,但是其安全风险却不容乐…...
大规模语言LLaVA:多模态GPT-4智能助手,融合语言与视觉,满足用户复杂需求
大规模语言LLaVA:多模态GPT-4智能助手,融合语言与视觉,满足用户复杂需求 一个面向多模式GPT-4级别能力构建的助手。它结合了自然语言处理和计算机视觉,为用户提供了强大的多模式交互和理解。LLaVA旨在更深入地理解和处理语言和视…...
Element UI定义方法校验邮箱格式
1. .vue中定义了3个邮箱输入框,前面两个是输入多个邮件地址,最后一个是使用element自带的校验来校验单个邮件地址 <el-row><el-col :span"24"><el-form-item label"收件人" prop"to"><el-input v-mo…...
DigiCert代码签名证书
在当今的数字化时代,确保软件的完整性和来源的可靠性至关重要。DigiCert代码签名证书是一种专业而受信任的数字签名解决方案,帮助开发者保护其软件免受篡改和恶意行为的侵害。本文将介绍DigiCert代码签名证书的特点和优势,并讨论为何选择Digi…...
HTML5+CSS3小实例:网页底部间隔波浪动画特效
实例:网页底部间隔波浪动画特效 技术栈:HTML+CSS 效果: 源码: 【html】 <!DOCTYPE html> <html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"><meta name="viewport" content…...
前端 js 之 代码执行的一个过程 02
嘿,欢迎你来 !💕 文章目录 前言一、运行一个 js 文件二、运行环境三、js执行代码的过程(普通变量)四、打印 window五、js执行代码的过程(函数变量)六、函数调用函数的过程注意!&…...
【经验分享】如何构建openGauss开发编译提交一体化环境
前文 本文适合对openGauss源代码有好奇心的爱好者,那么一个友好的openGauss源代码环境应该是怎么样的。openGauss的开发环境是如何设置的?openGauss的编译环境是如何构建的?如何向openGauss提交代码,笔者集合官方和几位博主实践提…...
儿童疫苗接种:安全与注意事项
引言: 儿童的疫苗接种是维护其健康和预防传染病的重要措施。疫苗可以有效地保护儿童免受各种疾病的威胁,但在接种过程中需要家长和监护人特别关注一些注意事项,以确保接种的安全性和有效性。本文将深入探讨儿童疫苗接种的重要性,…...
Go 代码块与作用域,变量遮蔽问题详解
Go 代码块与作用域详解 文章目录 Go 代码块与作用域详解一、引入二、代码块 (Block)2.1 代码块介绍2.2 显式代码块2.3 隐式代码块2.4 空代码块2.5 支持嵌套代码块 三、作用域 (Scope)3.1 作用域介绍3.2 作用域划定原则3.3 标识符的作用域范围3.3.1 预定义标识符作用域3.3.2 包代…...
可观测性-Metrics-WebClient异步Http远程Call
代码示例 1.依赖导入 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-webflux</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><ar…...
Android之播放本地视频和Url视频方法
一、播放本地视频文件 根据文件路径在浏览器中播放,可用于视频预览等场景 效果: 用浏览器播放本地视频 文件路径例子: /storage/emulated/0/Android/data/com.custom.jfrb/files/Movies/1697687179497.mp4 File file new File("文件…...
UI 动效设计原则:让界面呼吸起来
UI 动效设计原则:让界面呼吸起来 动效不是装饰,而是交互的语言。掌握这些原则,让你的设计会"说话"。 一、动效的本质 作为一名把代码当散文写的 UI 匠人,我始终认为动效是界面的灵魂。一个好的动效应该像呼吸一样自然—…...
用于预测肿瘤突变负荷及胃癌免疫治疗相关通路分析的生物知情图神经网络
论文总结1、有开源代码,本研究生成的数据和源代码存放在GitHub [https://github.com/liuchuwei/PGLCN]中,GitHub 使用Python和Pytorch实现。2、对比方法仅和传统的机器学习方法进行对比3、使用GNNExplainer进行生物学解释,整合TCGA中33种癌症…...
魔兽争霸3帧率终极优化指南:从60到240帧的完整解决方案
魔兽争霸3帧率终极优化指南:从60到240帧的完整解决方案 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 【问题诊断:你的魔兽争…...
华为:渐进解锁细粒度视觉感知
📖标题:FineViT: Progressively Unlocking Fine-Grained Perception with Dense Recaptions 🌐来源:arXiv, 2603.17326v1 🌟摘要 虽然多模态大语言模型(MLLM)经历了快速的发展,但其视…...
湖南长沙正规的空调工厂名声
在湖南长沙,寻找一家正规的空调工厂并非易事,但长沙荣幸商贸有限责任公司(以下简称“荣幸商贸”)凭借其卓越的服务和优质的产品,成为了众多消费者的首选。本文将通过具体数据和案例,为您详细介绍荣幸商贸的…...
基于RetinaFace的课堂考勤系统:人脸识别与数据分析
基于RetinaFace的课堂考勤系统:人脸识别与数据分析 1. 为什么传统点名方式正在被智能考勤替代 早上八点的教室里,老师站在讲台前翻着花名册,学生低头刷手机,后排有人悄悄把书包放在空座位上——这种场景在高校和职业院校并不少见…...
STM32F103C8T6 GPIO驱动LED保姆级教程(附完整代码)
STM32F103C8T6 GPIO驱动LED实战指南:从寄存器操作到HAL库封装 开篇:为什么选择STM32作为嵌入式开发入门 在众多微控制器中,STM32系列因其完善的生态和丰富的资源成为工程师的首选。特别是STM32F103C8T6这款被爱好者称为"蓝色药丸"的…...
避坑指南:QML调用C++时那些让你debug到崩溃的隐藏问题(Qt5/6通用)
QML与C交互避坑实战:信号槽、内存管理与类型转换的终极解决方案 第一次在QML中调用C对象时,那种跨语言调用的兴奋感很快会被各种诡异问题冲淡——信号死活不触发、对象莫名其妙被销毁、类型转换时程序崩溃...这些问题往往让开发者陷入数小时的debug泥潭。…...
GraceTheme定义“优雅大气”的WordPress主题新标准
网站不仅是信息的载体,更是品牌气质的延伸。无论是企业官网、个人博客还是作品集展示,如何在茫茫网海中脱颖而出,给用户留下深刻的第一印象?答案往往就藏在网站的“气质”之中。如果你正在寻找一款能够完美平衡美学设计与功能实用性的WordPr…...
WarcraftHelper终极指南:如何让魔兽争霸3在现代电脑上焕然新生 [特殊字符]
WarcraftHelper终极指南:如何让魔兽争霸3在现代电脑上焕然新生 🎮 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 还在为魔兽争…...
