Jmeter基础-HTTP请求
启动Jmeter
打开jmeter/bin文件/jmeter.bat(Windows执行文件)文件,就可以启动jmeter了
1、创建测试计划
启动后默认有一个TestPlan(测试计划),可修改其名称,使其变得有意义,容易看懂区分
2、新建线程组
右键TestPlan--Add--Threads(Users)-- Thread Group(线程组),新建一个线程组
3、添加http信息头管理器
右键线程组 -- Add(添加)-- Config Element(配置元器件)-- HTTP Header Manager(http信息头管理器)
JMeter不是浏览器,但是这些JMeter提供的配置元件中的HTTP属性管理器用于尽可能模拟浏览器行为,在HTTP协议层上发送给被测应用的http请求
(1)HTTP Header Manager(信息头管理器)
用于定制Sampler发出的HTTP请求的请求头的内容。不同的浏览器发出的HTTP请求具有不同的Agent
访问某些有防盗链的页面时需要正确的Refer...这些情况下都需要通过HTTP Header Manager来保证发送的HTTP请求是正确的
(2)HTTP Cookie Manager(cookie管理器)
用于管理Test Plan运行时的所有Cookie。HTTP Cookie Manager可以自动储存服务器发送给客户端的所有Cookie,并在发送请求时附加上合适的Cookie
同时,用户也可以在HTTP Cookie Manager中手工添加一些Cookie,这些被手工添加的Cookie会在发送请求时被自动附加到请求
(3)HTTP Cache Manager
用于模拟浏览器的Cache行为。为Test Plan增加该属性管理器后,Test Plan运行过程中会使用Last-Modified、ETag和Expired等决定是否从Cache中获取相应的元素
(4)HTTP Request Defaults(请求默认值)
用于设置其作用范围内的所有HTTP的默认值,可被设置的内容包括HTTP请求的host、端口、协议等
(5)HTTP Authorization Manager(授权管理器)
用于设置自动对一些需要NTLM验证的页面进行认证和登录
http信息头管理器添加好之后,需要填入信息头的名称以及对应的值,如下
Content-Type意思可以理解为参数名称、类型,值下面输入对应的参数类型就行了,这里我测试时候需要传输json类型,因此就填入了application/json
4、添加http请求
右键线程组 -- Add --- Sampler(取样器)-- HTTP Request
关于http请求的的属性参数说明:
1)Name(名称):用于标识一个sample。建议使用一个有意义的名称
2)Comments(注释):对于测试没任何影响,仅用来记录用户可读的注释信息
3)Protocol(协议):向目标服务器发送http请求时的协议,http/https,大小写不敏感,默认http
4)Server Name or IP(服务器名称或IP):http请求发送的目标服务器名称或者IP地址,比如http://www.baidu.com
5)Port Number(端口号):目标服务器的端口号,默认值为80,可不填
6)Method(方法):发送http请求的方法(链接:http://www.cnblogs.com/imyalost/p/5630940.html)
7)Path(路径):目标的URL路径(不包括服务器地址和端口)
8)Content encoding:内容的编码方式(Content-Type=application/json;charset=utf-8)
————————————————————————————————————————————————————————
9)Redirect Automatically(自动重定向):如果选中该项,发出的http请求得到响应是301/302,jmeter会重定向到新的界面
10)Follow Redirects(跟随重定向):如果发出的http请求得到响应是301/302,jmeter会重定向到新的界面
11)Use keep Alive:jmeter 和目标服务器之间使用 Keep-Alive方式进行HTTP通信(默认选中)
12)Use multipart/from-data for HTTP POST :当发送HTTP POST 请求时,使用
13)Browser Compatible headers
————————————————————————————————————————————————————
14)Parameters、Body Data以及Files Upload的区别:
1. parameter是指函数定义中参数,而argument指的是函数调用时的实际参数
2. 简略描述为:parameter=形参(formal parameter), argument=实参(actual parameter)
3.在不很严格的情况下,现在二者可以混用,一般用argument,而parameter则比较少用
While defining method, variables passed in the method are called parameters.
当定义方法时,传递到方法中的变量称为参数.
While using those methods, values passed to those variables are called arguments.
当调用方法时,传给变量的值称为引数.(有时argument被翻译为“引数“)
4、Body Data指的是实体数据,就是请求报文里面主体实体的内容,一般我们向服务器发送请求,携带的实体主体参数,可以写入这里
5、Files Upload指的是:从HTML文件获取所有有内含的资源:被选中时,发出HTTP请求并获得响应的HTML文件内容后还对该HTML
进行Parse 并获取HTML中包含的所有资源(图片、flash等):(默认不选中)
如果用户只希望获取特定资源,可以在下方的Embedded URLs must match 文本框中填入需要下载的特定资源表达式,只有能匹配指定正则表达式的URL指向资源会被下载
5、添加监视器-查看结果数
最后可以给这个测试计划添加一个监视器,常用的监视器有“查看结果树”和“聚合报告”
添加好监视器,点击运行,开始测试
6、运行并查看结果
点击运行,开始测试,测试完成后可查看运行结果
301重定向
200,成功
原文地址:https://www.cnblogs.com/yaner2018/p/11017804.html
- 如果你想深刻理解ASP.NET Core请求处理管道,可以试着写一个自定义的Server
- 路面能发电,智慧交通不遥远
- 小程序:企鹅帝国身后,微信帝国正悄悄露出冰山一角!
- ASP.NET MVC路由扩展:路由映射
- 如何改善遗留的代码库
- ASP.NET的路由系统:根据路由规则生成URL
- ASP.NET Core 1.0中实现文件上传的两种方式(提交表单和采用AJAX)
- 通过3个Hello World应用来了解ASP.NET 5应用是如何运行的(1)
- 工业X.0将至 企业数字化转型该怎么做?
- 通过3个Hello World应用来了解ASP.NET 5应用是如何运行的(2)
- 通过3个Hello World应用来了解ASP.NET 5应用是如何运行的(3)
- 为什么说2018年互联网创业机会将变少
- ASP.NET MVC Controller激活系统详解:IoC的应用[上篇]
- ASP.NET Core的配置(1):读取配置信息
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 如何用R语言绘制生成正态分布图表
- ggplot2-plotly|让你的火山图“活”过来
- 小数据| 描述性统计(Python/R 实现)
- ggplot2|发散性“正负”图
- R语言蒙特卡洛计算和快速傅立叶变换计算矩生成函数
- pheatmap|暴雨暂歇,“热图”来袭!!!
- 统一服务消息接口报48001错误
- ggplot2|ggpubr进行“paper”组图合并
- PostgreSQL drop table 空间不释放的问题解决
- R语言预测人口死亡率:用李·卡特模型、非线性模型进行平滑估计
- Dockerfile 指令
- Docker 构建容器Tomcat+Nginx+MySQL
- 三种动态控制SAP CRM WebClient UI assignment block显示与否的方法
- TCGA数据库中癌症名称缩写
- CloudFlare自定义节点优化网站