Jmeter系列(21)- 详解 HTTP Request
如果你想从头学习Jmeter,可以看看这个系列的文章哦
https://www.cnblogs.com/poloyy/category/1746599.html
HTTP Request 介绍
用来发送 HTTP、HTTPS 协议请求
HTTP Request 界面

| 字段名 | 作用 | 默认值 |
| 名称 | 不多介绍啦,建议自定义一个识别度高的名称 | |
| 注释 | 对于测试没有任何影响,仅记录作用 | |
| 协议 | http或https,大小写不敏感 | http |
| 服务器名称或IP |
|
|
| 端口号 | 目标服务器的端口号 | 80 |
| 方法 | 发送 http 请求的方法 | GET |
| 路径 |
|
|
| 内容编码 | 请求的编码方式 | iso8859 |
| 自动重定向 |
|
不勾选 |
| 跟随重定向 |
|
勾选 |
| 使用 KeepAlive |
|
勾选 |
| 对POST使用multipart/form-data | post 请求需要上传文件时勾选 | 不勾选 |
| 与浏览器兼容的头 | 当勾选 multipart/form-data 时,勾选此项,http请求头中的 Content-Type 和Content-Transfer-Encoding 被忽略,而只发送 Content-Disposition 部分 | 不勾选 |
Parameters 讲解

| 字段 | 描述 |
| Name | 参数名 |
| Value | 参数值 |
| URL Encode? |
|
| Content-Type |
|
| Include Equals? |
|
什么是 URL 编码
- URL 编码解码,又叫百分号编码,是统一资源定位(URL)的编码方式
- URL 地址(常说网址)规定了数字,字母可以直接使用,另外一批作为特殊用户字符也可以直接用( / , : @ 等),剩下的其它所有字符必须通过 %xx 编码处理
- 编码方法很简单,在该字符ascii码的的16进制字符前面加%,如空格字符,ascii码是32,对应16进制是20,那么 urlencode 编码结果是 %
URL 编码的栗子
直接在网上搜在线 URL 编解码

include equals 的栗子
参数值为空,且勾选 Include equals

参数值为空,但不勾选 Include equals

其实说的就是等于号而已,一般也不会传空值,即使传了也会带上=
Body Data 讲解

- 没啥好说的,传 json 字符串就行了,注意下格式,后面再讲具体栗子
- 不过倒有个重点:如果 Parameters 有参数列表的话,是无法切换到 Body Data 的哦
Files Upload 讲解

| 字段 | 描述 |
| File Path | 文件的本地路径 |
| Parameter Name | 参数名 |
| MIME Type | 资源媒体类型 |
常见资源媒体类型
| 类型 | 文件后缀 | 格式 |
| 超文本标记语言文本 | .html | text/html |
| 普通文本 | .txt | text/plain |
| XML 文件 | .xml | text/xml |
| PNG 图片 | .png | image/png |
| GIF | .gif | image/gif |
| JPEG 图片 | .jpeg、jpg | image/jpeg |
| 类型 | 文件后缀 | 格式 |
| 表单中进行文件上传 | multipart/form-data | |
| 表单默认提交数据的格式 | application/x-www-form-urlencoded | |
| XML 数据格式 | application/xml | |
| JSON 数据格式 | application/json | |
| RTF 文件 | application/pdf | |
| RTF 文本 | .rtf | application/rtf |
| GZIP 文件 | .gz | application/x-gzip |
| TAR 文件 | .tar | application/x-tar |
| AVI 文件 | .avi | video/x-msvideo |
| MPEG 文件 | .mpg、.mpeg | video/mpeg |
不同的content-type在jmeter中如何输入参数
前提
因为是需要真实接口进行测试的,这里提供两种方案
- 自己用 Flask 框架开发了本地的接口进行测试, 如果有需要的同学进群领取哦:870155189
- 或者进入 http://open.yesapi.cn/?r=user/registration&from=wx_837493986,直接注册个账号,弄个免费会员,有在线免费的接口提供测试哦
application/x-www-form-urlencoded 的栗子
备注:也是表单提交最常见的栗子
Parameters 方式传参


总结
- 最终表单的参数列表会拼接到 URL 中,所以如果包含了中文、特殊字符就要勾选编码?哦
- 这里不可以通过 Body Data 传递参数哦,会无法识别到参数,已实践过(即使加了 HTTP请求头也不行),乖乖用 Parameters 的方式传参
content-type:application/json 的栗子
Body Data 方式传参

添加 HTTP请求头

请求体

请求头

结论
重点就是添加 HTTP请求头,指明 Content-type 是 json 格式
content-type:multipart/form-data
重点:用于 post 请求,需要文件上传的场景;记住不是 get 请求
请求参数列表

如果选了 get 方法的话,文件参数是不会生效哦
文件参数

请求体

重点
- 如果添加了 HTTP请求头,请务必不要添加 content-type : multipart/form-data
- 如果加了的话:那么所有的请求参数都会被当成文件以二进制形式传输,我们 parameters 里的文本格式参数就不会被识别,接口会提示参数为空
HTTP Request Advance
说实话我还没用过这部分的内容,不过还是得了解下每个配置项是什么意思哦

Client implemention 和 Timeouts
| 字段 | 描述 |
| implementation | 发送http请求的方式,可选项为 java、HttpClient4(默认) |
| Connect | 连接超时时间,单位毫秒 |
| Respones | 响应等待超时时间,单位毫秒 |
Embedded Resources from HTML Files
- 从HTML文件获取所有内含的资源
- jmeter 在发出的 HTTP请求获得响应的 HTML文件内容后,对 HTML进行解析并获取HTML中包含的所有资源(图片、flash等)
| 字段 | 描述 |
| Retrieve All Embedded Resources | 发送http请求的方式,可选项为 java、HttpClient4(默认) |
| Parallel downloadds. Number |
是否使用自设资源处。启用后可以设置资源池大小,默认为6 |
| URLs must match | URL 匹配过滤,填写此项则只会下载与此内容项匹配的 url 的资源 |
Source address
只用于 HTTP协议且 implemention = HttpClient4 时
| 字段 | 描述 |
| IP/Hostname | IP /主机名以使用特定的IP地址或(本地)主机名 |
| Device | 选择设备以选择该接口的第一个可用地址,该设备可以是IPv4或IPv6 |
| Device IPv4 | 选择IPv4设备来选择名称设备的IPv4地址(如eth0, lo, em0) |
| Device IPv6 | 选择IPv6设备来选择名称设备的IPv6地址(如eth0, lo, em0) |
Proxy Server
代理服务器
| 字段 | 描述 |
| Server Name or IP | 代理服务器的名称或者IP地址 |
| Port Number | 代理服务器的端口号 |
| Username | 代理服务器的用户名 |
| Password | 代理服务器的密码 |
Jmeter系列(21)- 详解 HTTP Request的更多相关文章
- 反爬虫:利用ASP.NET MVC的Filter和缓存(入坑出坑) C#中缓存的使用 C#操作redis WPF 控件库——可拖动选项卡的TabControl 【Bootstrap系列】详解Bootstrap-table AutoFac event 和delegate的分别 常见的异步方式async 和 await C# Task用法 c#源码的执行过程
反爬虫:利用ASP.NET MVC的Filter和缓存(入坑出坑) 背景介绍: 为了平衡社区成员的贡献和索取,一起帮引入了帮帮币.当用户积分(帮帮点)达到一定数额之后,就会“掉落”一定数量的“帮帮 ...
- Jmeter常用功能详解
嘻嘻,忙碌的一周,马上就到周四了~明天就是周五了,可以去嗨了! 这几天正式成立了一个微信订阅号,旨在免费帮助需要入门软件测试的小白! 各位走过路过的亲,欢迎订阅哦:扫描二维码即可订阅
- PHP输出缓存ob系列函数详解
PHP输出缓存ob系列函数详解 ob,输出缓冲区,是output buffering的简称,而不是output cache.ob用对了,是能对速度有一定的帮助,但是盲目的加上ob函数,只会增加CPU额 ...
- Jmeter 测试计划元素详解
Jmeter 测试计划元素详解 by:授客 QQ:1033553122 由于篇幅问题,采用链接分享的形式,烦请复制以下网址,黏贴到浏览器中打开,下载 http://pan.baidu.com/s/1n ...
- jmeter --响应断言详解
jmeter --响应断言详解 响应断言 :对服务器的响应进行断言校验 (1)应用范围: main sample and sub sample, main sample only , sub-samp ...
- jmeter 基础功能详解
jmeter 基础功能详解 thread group:包含一组线程,每个线程独立地执行测试计划. sampler:采样器,有多种不同的sample实现,用来发起各种请求,如http请求,jdbc请求, ...
- SignalR新手系列教程详解总结(转)
SignalR新手系列教程详解总结 GlobalHost.ConnectionManager.GetHubContext<TodoListHub>() .Clients.Clients(l ...
- 猫哥网络编程系列:详解 BAT 面试题
从产品上线前的接口开发和调试,到上线后的 bug 定位.性能优化,网络编程知识贯穿着一个互联网产品的整个生命周期.不论你是前后端的开发岗位,还是 SQA.运维等其他技术岗位,掌握网络编程知识均是岗位的 ...
- 『动善时』JMeter基础 — 29、JMeter响应断言详解
目录 1.JMeter断言介绍 2.响应断言组件界面详解 3.响应断言组件的使用 (1)测试计划内包含的元件 (2)登陆接口请求界面内容 (3)响应断言界面内容 (4)查看运行结果 (5)断言结果组件 ...
- 『动善时』JMeter基础 — 54、JMeter聚合报告详解
目录 1.聚合报告介绍 2.聚合报告界面详解 3.聚合报告中信息点说明 (1)百分位数的说明 (2)吞吐量说明 提示:聚合报告组件的使用和察看结果树组件的使用方式相同.本篇文章主要是详细的介绍一下聚合 ...
随机推荐
- Spring bean工厂配置头文件
命名 beans.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns=" ...
- 干货!JNPF快速开发平台功能一览
JNPF,采用主流的两大技术Java/.Net开发,是一套低代码开发平台,可视化开发环境,有拖拽式的代码生成器,灵活的权限配置.SaaS服务,强大的接口对接,随心可变的工作流引擎,一站式开发多端使 ...
- 使用OS模块来获取文件路径
1.os模块概述 Python os模块包含普遍的操作系统功能.如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的. 2.常用方法 os.getcwd() 函数得到当前工作目录,即当前Pyth ...
- HTTP——无状态协议理解
无状态服务器是指一种把每个请求作为与之前任何请求都无关的独立的事务的服务器. HTTP是一个属于应用层的面向对象的协议 ------未完待续
- js函数中的this关键字
关于这个this关键字,也是很多项目中常常被用到的,那么,有人也许会问,干嘛要用this呢,在函数被调用时,直接指明是什么对象在调用不就行了?还整那么个模模糊糊的概念出来干嘛?不过嘛,存在即真理,既然 ...
- Shell 脚本(四) ”read 读取控制台输入” 与 “函数”
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 八.read 读取控制台输入 1.基本语法 read(选项)(参数) 选项: -p: 指定读取值时的提示 ...
- Java实现 蓝桥杯 算法训练 求平方和
试题 算法训练 求平方和 问题描述 请用函数重载实现整型和浮点习型的两个数的平方和计算 输入格式 测试数据的输入一定会满足的格式. 2 2(2行2列,第1行整型,第2行浮点型) 输出格式 要求用户的输 ...
- Java实现 蓝桥杯 算法训练 Lift and Throw
试题 算法训练 Lift and Throw 问题描述 给定一条标有整点(1, 2, 3, -)的射线. 定义两个点之间的距离为其下标之差的绝对值. Laharl, Etna, Flonne一开始在这 ...
- Java实现 LeetCode 167 两数之和 II - 输入有序数组
167. 两数之和 II - 输入有序数组 给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数. 函数应该返回这两个下标值 index1 和 index2,其中 index1 必 ...
- Java实现 蓝桥杯VIP 算法提高 计算器
算法提高 计算器 时间限制:1.0s 内存限制:256.0MB [问题描述] 王小二的计算器上面的LED显示屏坏掉了,于是他找到了在计算器维修与应用系学习的你来为他修计算器. 屏幕上可以显示0~9的数 ...