Jmeter验证码注册接口压力测试实战
主要学习的内容包括发送HTTP请求、HTTP信息头管理器、HTTP cookies管理器、用户定义的变量、响应断言、CSV数据文件设置的使用。
测试网址及测试接口等说明
提供的测试网址为:
http://www.qk365.com/security/register
使用Chrome浏览器,先将浏览器的cookies缓存清空。
清空后,打开待测试的网址,按F12键,输入要注册的手机号码,如“18300987622”,点击“发送验证码”,可以看到请求的接口为:http://www.qk365.com/security/smsCode.do,请求的参数为json格式的数据:
{"mobile":"18300987622","func":"register","isValidate":"1","memKey":"register-18300987622","memValue":"7F4BEC3A-BE2F-48C7-91ED-33887E186C87"}
在知道接口后,就可以开始我们的接口测试了。
查看测试接口
jmeter进行http post请求接口测试
默认环境已经有的条件下(这里不对jmeter运行环境如何搭建做过多的描述,请自行上网查找环境搭建的相关资料),双击jmeter.bat。出现如下界面设置工具的显示语言,Options→Chose Language→Chinese
完成上述步骤后,创建HTTP请求,包括:HTTP请求头,HTTP请求体以及察看结果树
1、在测试计划中添加线程组
2、在线程组中添加配置元件,HTTP信息头管理器,将刚才注册页面的请求头选中并且复制,在HTTP信息头管理器中单击“Add from Clipboard”完成请求头的复制
复制请求头
请求头添加到HTTP信息头管理器
3、在线程组中添加HTTP请求,请求的请求体为图下内容
请求体
填写HTTP POST请求
4、线程组添加察看树,点击启动按钮,查看请求结果
5、为响应结果添加断言,只有响应结果中包含"msg":"短信发送成功"的响应数据,这个请求才算是成功
Jmeter请求接口参数化
模拟5个用户执行以上的测试过程,我们发现只有第一次是成功的,其余的返回"msg":“短信验证码发送过于频繁”
模拟5个用户
结果查看
发现原来是每个请求的请求手机号是一样的,导致失败
这时候可以使用配置元件,CSV数据文件设置每次请求的手机号是不同的,在这里我准了一份手机号码的excel文件,需要注意的是保存这个文件的时候要保存成.CSV格式的,这里我将这份文件放到jmeter的examples目录下
在CSV数据文件配置中填写如下信息,然后修改验证码接口中HTTP请求的请求体,最后再执行一次,发现每次请求使用的手机号是不同的,并且请求成功
配置填写
修改请求体
请求结果
Jmeter请求接口压力测试
修改线程组参数,添加聚合报告等,对接口进行压力测,这里可以把察看结果树禁用了,因为在请求很多的情况下,会影响工具性能。最后等结果
需要注意的是启动jmeter.bat提示的那段话,压力测试要用非界面模式,界面模式用来生成脚本,调试没有问题了,再进行非界面的压力测试
May 22, 2018 9:42:40 PM java.util.prefs.WindowsPreferences <init>
WARNING: Could not open/create prefs root node Software\JavaSoft\Prefs at root 0x80000002. Windows RegCreateKeyEx(...) returned error code 5.
============================================================
Don't use GUI mode for load testing !, only for Test creation and Test debugging.
For load testing, use NON GUI Mode:
jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]
& increase Java Heap to meet your test requirements:
Modify current env variable HEAP="-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m" in the jmeter batch file
Check : https://jmeter.apache.org/usermanual/best-practices.html
============================================================
Jmeter报告生成
这部分内容网上能查询包相关信息,这里不进行讲解。
写在最后
这个平台可以频繁的刷验证码接口,这本身就是一个bug。前端的滑动验证功能就是形同虚设的。
资源分享
下方这份完整的软件测试视频学习教程已经上传CSDN官方认证的二维码,朋友们如果需要可以自行免费领取 【保证100%免费】
Jmeter验证码注册接口压力测试实战相关推荐
- Jmeter验证码图片识别注册接口压力测试实战
写在前面 前段时间写了一篇博文<Jmeter验证码注册接口压力测试实战>,前两天又登录对应的网站看了一下.发现原来滑动验证的方式改成了图片验证码的方式,防止用户多次发送手机验证码. 看到这 ...
- 使用jmeter进行api接口压力测试
前言 压力测试的工具挺多的,但看了其他人的文章介绍,还是选了jmeter,开源.免费啊, 下载 下载地址: https://jmeter.apache.org/download_jmeter.cgi ...
- Jmeter 接口压力测试实战(一):Jmeter将测试结果写入到Excel中
1.Jmeter写入结果到Excel之环境准备 下载jxl.jar包 下载好之后,将这个包放到jmeter安装路径下的lib目录下 jxl.jar的作用:完成对excel的读写以及修改等操作 2.如何 ...
- 接口压力测试:Postman【Postman通常用于做接口测试,同时也可以用于作为压力测试】、Jmeter【专门做压力测试】、Loadrunner、Apache AB、Webbench
做开发的同学一定会遇到接口对接,今天介绍两个对接测试两个我个人认为比较好的测试工具 postman和jmeter 1.postman通常用于做接口测试,同时也可以用于作为压力测试 2.jmeter做压 ...
- 学习笔记-JMeter 进行接口压力测试
一.压力测试场景设置 1.场景设定:进行接口压力测试时,有单场景也有混合场景.单场景就是对一个接口进行请求:混合场景需要对多个接口进行请求,在流程类业务场景会运用到 2.压测时间设定:通常时间为10- ...
- 【Jmeter基础篇】03:如何进行post接口压力测试
目前网络上有很多很多Jmeter的压力测试使用指南,但是在实际使用过程中,很多朋友会遇到许多并不处于理想状态的情况,比如某些参数不知道应该往哪里放,具体怎么分析测试结果等等. 所谓压力测试,实质就是让 ...
- 用python做简单的接口压力测试
一个多月没有更博了,最近研究了一下接口的压力测试,主要来说就是连续频繁的对接口的调用,来测试接口的响应速度.返回结果,找到接口的性能瓶颈,最大承受极限等. 做接口压力测试的方法和工具很多,比较常用的工 ...
- 二、多并发实现接口压力测试
一.flsak接口压力测试 import base64 import logging import os, cv2,time import urllib, glob import numpy as n ...
- Jmeter教程 简单的压力测试
Jmeter是一个非常好用的压力测试工具. Jmeter用来做轻量级的压力测试,非常合适,只需要十几分钟,就能把压力测试需要的脚本写好. 阅读目录 什么是压力测试 做压力测试的常用工具 做压力测试的 ...
最新文章
- 设计模式--模板方法模式
- 如何查看仅一个用户提交的git日志?
- 按汉字首字母排序(sql语句)
- 库克“一语成谶”:又有 30 万台安卓设备被“感染”了!| 文末福利
- 02241107班编程题 切片逆序大小写等
- 矩阵乘法c语言蓝桥杯,[蓝桥杯][基础练习VIP]矩阵乘法 (C语言代码)
- phpnow修改默认站点根目录的方法
- LINUX下载编译libffi
- TF-IDF来源及理论推导 熵推导出
- 舆情监控系统python开源_舆情监测系统开源
- 学习|Android使用TTS语音合成
- axios请求跨域前端解决_10、axios请求以及跨域问题,前端解决方法。11、后端-nginx解决方法...
- 为响应国家号召1+X证书Web前端开发最新考试模拟题
- GitHub下载代理设置
- 手机端我的优惠券页面html代码
- 如何使用 DiskGenius 合并分区教程
- 汉澳matrix矩阵电脑
- 使用回环地址建立bgp邻居
- C# , 删除字符串中指定字符的几种方法
- linux 中gzip,zip,bizp2 最常见的压缩工具