Jmeter —— jmeter利用取样器中http发送请求

使用Jmeter发送HTTP请求

取样器是用来模拟用户操作,向服务器发送请求以及接收服务器的响应数 据的一类元件,其中HTTP请求取样器是用来模拟常用的http请求的

步骤如下:

步骤一:添加线程组

右击测试计划------添加------线程(用户)------线程组

如下图:

"线程组"的意思:JMeter是由Java实现的,并且使用一个Java线程来模拟一个用户,因此线程组 就是指一组用户的意思,换句话说一个线程组就是一组虚拟用户 这些虚拟用户用来模拟访问被测系统

①:线程数:这里就是指虚拟用户数,默认的输入是"1",则表明模拟一个虚拟用户访问被测系统,如果想模拟100个用户,则此处输入100。

②:Ramp-Up时间(秒):虚拟用户增长时长。也就是说在规定时间内启动所有线程数

③:循环次数:该处设置一个虚拟用户做多少次的测试。默认为1,意味着一个虚拟用户做完一遍事情之后,该虚拟用户停止运行。如果选中"永远",则意味着测试运行起来之后就根本停不下来了,除非你把它强制停止

步骤二:添加HTTP请求

右击线程组------添加------取样器------HTTP请求;如下图

基本界面选项介绍;如下图

**名称:**本属性用于标识一个取样器,建议使用一个有意义的名称

**注释:**对于测试没有任何作用,仅用户记录用户可读的注释信息

**协议:**向目标服务器发送HTTP请求时的协议,可以是http或者是https或者File , 默认值为http

服务器名称或IP :HTTP请求发送的目标服务器名称或IP地址

**端口号:**目标服务器的端口号,默认值为80,https的端口为443

**http请求:**发送HTTP请求的方法,可用方法包括GET、POST等

**路径:**目标URL路径(不包括服务器地址和端口)/可以写完整路径,但不规范

**内容编码 :**内容的编码方式,默认值为iso8859;一般都填入utf-8

**自动重定向:**如果选中该选项,当发送HTTP请求后得到的响应是302/301时,JMeter 会自动重定向到新的页面,但是Jmeter是不记录重定向的过程内容。

**跟随重定向:**Http Request取样器的默认选项,当响应code是3xx时,自动跳转 到目标地址。与自动重定向不同,Jmeter会记录重定向过程中的所有请求响应, 在查看结果树时可以看到服务器返回的内容,如有多个跳转则多个请求都会被记 录下来,此为默认选项

**使用 keep Alive :**当该选项被选中时,jmeter 和目标服务器之间使用 KeepAlive方式进行HTTP通信,默认选中。

**对post使用multipart/from-data:**当发送POST请求时,使用multipart/from-data 方法或者application/x-www-form-urlencoded方法发送,默认不选中。

**与浏览器兼容的头:**当勾选multipart/form-data时,勾选此项会截掉http请求头中 的Content-Type和Content-Transfer-Encoding,而只发送Content-Disposition部 分。

**参数:**可以将URL中所有参数设置在本表中,表中的每一行是一个参数值对,此 时编码这个选项设置为UTF-8并勾选最好,防止参数值内含有ASCII Control Chars或者Non-ASCII characters或者其他符号导致乱码问题。

**消息体数据:**同请求一起发送的数据信息,这里可以支持多种数据格式,json、 xml等;

**文件上传:**同请求一起发送的文件信息,参数名称就是发送文件对应的参数, MINE Type为资源媒体类型

高级界面选项介绍

**实现:**发送http请求的方式,可选项为java和HttpClient4,默认为HttpClient4

**连接:**连接超时时间设置,单位为毫秒

**响应:**响应等待超时时间设置,单位为毫秒

**从HTML文件获取所有内含的资源:**当该选项被选中时,jmeter在发出HTTP请求 并获得响应的HTML文件内容后,还对该HTML进行解析 并获取HTML中包含的 所有资源(图片、flash等)

**并行下载:**设置是否使用自设资源池,勾选后可设置大小

**数量:**资源池大小,默认为6

**网址必须匹配:**URL匹配过滤,填写此项则只会下载与此内容项匹配的url的资源

**源地址:**只用于http协议且Implementation为HttpClient4的情况,此属性用于启 用IP欺骗。会重写了这个http请求使用的默认本地IP地址。用于Jmeter主机具有 多个IP地址(即IP别名、网络接口、设备)的情况。该值可以是主机名、IP地址 或网络接口设备,如"ey0"或"l0"或"wlan0"。

**代理服务器:**代理服务器的相关配置信息

**保存响应为MD5哈希:**选中该项,在执行时仅记录服务端响应数据的MD5值, 而不记录完整的响应数据。在需要进行数据量非常大的测试时,建议选中该项以 减少取样器记录响应数据的开销

步骤三:添加http信息头管理器

在百度搜索上右击------------添加------配置元件------添加http信息头管理,添加百度搜索的header头部信息

步骤四:添加察看结果树

在百度搜索上右击------添加------监听器------察看结果树

步骤五:点击运行

点击菜单栏中的三角图标开始运行,然后点击察看结果树,红色代表错误,绿色代表成功

行动吧,在路上总比一直观望的要好,未来的你肯定会感 谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入扣群: 320231853,里面有各种软件测试+开发资料和技术可以一起交流学习哦。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关推荐
速盾cdn2 小时前
速盾:CDN是否支持屏蔽IP?
网络·网络协议·tcp/ip
tester Jeffky10 小时前
深入探索JMeter的执行器时间线:从CLArgsParser到JmeterEngine
jmeter
惜.己10 小时前
Jmeter中的断言(二)
测试工具·jmeter·1024程序员节
tester Jeffky11 小时前
深入探索JMeter bin目录中的Properties文件:优化性能测试的关键
jmeter
Lws12 小时前
CS144 lab0(个人理解)
网络协议
AI_小站13 小时前
RAG 示例:使用 langchain、Redis、llama.cpp 构建一个 kubernetes 知识库问答
人工智能·程序人生·langchain·kubernetes·llama·知识库·rag
互联网杂货铺15 小时前
自动化测试基础知识总结
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
MapleLea1f15 小时前
26届JAVA 学习日记——Day14
java·开发语言·学习·tcp/ip·程序人生·学习方法
C++忠实粉丝16 小时前
计算机网络socket编程(2)_UDP网络编程实现网络字典
linux·网络·c++·网络协议·计算机网络·udp
添砖java_85716 小时前
UDP数据报套接字编程
网络·网络协议·udp