启动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,成功

Jmeter基础-HTTP请求的更多相关文章

  1. JMeter基础:请求参数Parameters 、Body Data的区别

    使用Jmeter测试时,很多人不知道请求参数Parameters .Body Data的区别和用途,这里简单介绍下 先了解一个接口的基本概念 在客户机和服务器之间进行请求-响应时,HTTP协议中包括G ...

  2. 『动善时』JMeter基础 — 6、使用JMeter发送一个最基础的请求

    目录 步骤1:创建一个测试计划 步骤2:创建线程组 步骤3:创建取样器 步骤4:创建监听器 步骤5:完善信息 步骤6:保存测试计划 步骤7:查看结果 总结:JMeter测试计划要素 当我们第一次打开J ...

  3. JMeter基础之--元件的作用域与执行顺序

    前面有介绍过jmeter的元件类别,对于新手来说,jmeter的元件是还是不少的,如果我们按照每一个元件的每一个参数的含义去学习,无疑会降低学习性能测试的热情,就算我们熟悉了所有元件以及元件上的参数了 ...

  4. JMeter基础之一 一个简单的性能测试

    JMeter基础之一 一个简单的性能测试 上一节中,我们了解了jmeter的一此主要元件,那么这些元件如何使用到性能测试中呢.这一节创建一个简单的测试计划来使用这些元件.该计划对应的测试需求. 1)测 ...

  5. Jmeter基础之---jmeter基础概念

    Jmeter基础之---jmeter基础概念 JMeter 介绍: 一个非常优秀的开源的性能测试工具. 优点:你用着用着就会发现它的重多优点,当然不足点也会呈现出来. JMeter 介绍: 一个非常优 ...

  6. 转:应用JMeter测试solr请求

    使用JMeter测试solr请求 一.安装JMeter 在官网http://jmeter.apache.org/download_jmeter.cgi下载JMeter 直接解压JMeter安装包 Li ...

  7. jmeter 基础功能详解

    jmeter 基础功能详解 thread group:包含一组线程,每个线程独立地执行测试计划. sampler:采样器,有多种不同的sample实现,用来发起各种请求,如http请求,jdbc请求, ...

  8. 转 JMeter基础之--元件的作用域与执行顺序

    前面有介绍过jmeter的元件类别,对于新手来说,jmeter的元件是还是不少的,如果我们按照每一个元件的每一个参数的含义去学习,无疑会降低学习性能测试的热情,就算我们熟悉了所有元件以及元件上的参数了 ...

  9. JMeter处理jdbc请求后的响应结果

    JMeter如果进行JDBC请求,请求后的响应结果如何给下一个请求用(也就是传说中的关联),于是研究了一下,下面将学习的成果做个记录: 1.添加 "JDBC Connection Confi ...

随机推荐

  1. 自定义Bootstrap样式弹出框

    最近做的一些功能需要用到Bootstrap,然而原来的系统并没有引入Bootstrap,为了新写的控件能够应用于老的页面,又不需要在老的页面上引入全套的Bootstrap文件决定写一个模仿Bootst ...

  2. Jenkins+Jmeter+Ant   生成测试报告

    <?xml version="1.0" encoding="UTF-8"?> <project name="wms_test&quo ...

  3. Jdbc批处理一点异同

    同样的代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 public class TestBatch {   public stati ...

  4. Knapsack Problem

    0-1背包 描述:N件物品,第i件的重量是w[i],价值v[i].有一个容量为W的背包,求将哪些物品放入背包可使总价值最大.每件物品可以用0或1次. 分析:根据题意,可以写出表达式: \[max(\S ...

  5. matlab-均值滤波

    均值滤波 主要思想为邻域平均法,即用几个像素灰度的平均值来代替每个像素的灰度.有效抑制加性噪声.缺点:容易引起图像模糊,可以对其进行改进,主要避开对景物边缘的平滑处理. 均值滤波器的缺点是存在着边缘模 ...

  6. CC2530通用IO口的输入输出

    一.引脚概述 CC2530有40 个引脚.其中,有21个数字I/O端口,其中P0和P1是8 位端口,P2仅有5位可以使用.P2端口的5个引脚中,有2个需要用作仿真,有2个需要用作晶振.所以可供我们使用 ...

  7. 拒绝老土!暗黑风格半透平面化主题—InfinityFreedom正式发布

    经常听到“路由器界面土点就土点吧,凑合能用就成.” 诚然,路由器重要的是功能,但为什么要辣眼睛呢? 拯救喜欢折腾的你,抢救干涩的眼球,原创OpenWrt主题Infinity Freedom正式发布! ...

  8. 数据结构之栈(stack)的实现

    一.栈 1.定义 栈的英文为(stack),是一种数据结构 栈是一个先入后出(FILO-First In Last Out)的有序列表. 栈(stack)是限制线性表中元素的插入和删除只能在线性表的同 ...

  9. 基于环信SDK的IM即时通讯填坑之路(vue)

    公司最近使用第三方环信SDK的进行通信聊天,基本已完成.记录下填坑之路 1.可以通过以下方式引用 WebSDK 1.安装 npm install easemob-websdk --save 2. 先 ...

  10. 第一行Kotlin系列(二)Intent隐式显式跳转及向下传值

    1.Intent显式跳转页面 val button5 = findViewById<Button>(R.id.mButton5) button5.setOnClickListener { ...