jmeter接口测试流程

目录

一、添加线程组

二、添加HTTP请求默认值

三、添加HTTP Cookie管理器

四、添加http请求

五、添加HTTP信息头管理器

六、添加响应断言

七、添加察看结果树

八、jmeter快捷键 


一、添加线程组

  1. 鼠标右键点击“测试计划-->添加-->线程组(用户)-->线程组”,添加测试场景设置组件,接口测试中一般设置为1个“线程数”,根据测试数据的个数设定“循环次数”;
  2. 设置线程数:线程数即虚拟用户数,每个线程将会完全独立的运行测试计划,互不干扰,多个线程用于模仿对服务器的并发访问;接口测试中一般设置为1个“线程数”;
  3. 设置ramp-up 时间:设置虚拟用户数全部启动的时长;如果线程数为20,准备时长为10秒,那么需要10秒钟启动20个线程,也就是平均每秒启动2个线程;
  4. 设置循环次数:每个线程发送请求的个数。如果线程数为20,循环次数为10,那么每个线程发送10次请求。总请求数为20*10=200。如果勾选了“永远”,那么所有线程会一直发送请求,直到手动点击工具栏上的停止按钮,或者设置的线程时间结束。

 图 1 线程组--元件位置

图 2 线程组--相关参数

二、添加HTTP请求默认值

        HTTP请求默认值可以对同级别HTTP请求设置默认域名、路径、传参等。如果HTTP请求的值与请求默认值冲突,以HTTP请求为主。

       使用场景:为一组访问同域名的请求设置HTTP请求默认值,避免每个HTTP请求都设置同样的参数。修改时也更方便。

  1. 鼠标右键点击“测试计划-->添加-->配置元件-->HTTP请求默认值”;
  2. 填写域名、路径,设置传参。

图3 HTTP请求默认值--元件位置

图 4 HTTP请求默认值--相关参数

三、添加HTTP Cookie管理器

        HTTP Cookie管理器像Web浏览器一样存储和发送Cookie。如果HTTP请求响应包含cookie,则Cookie管理器会自动存储该cookie,并将其用于将来对该特定网站的所有请求,每个jmeter线程都有自己的“cookie存储区”。如果手动将Cookie添加到Cookie管理器,cookie将由所有jmeter线程共享。

  1. 鼠标右键点击“测试计划-->添加-->配置元件-->HTTP Cookie管理器”;
  2. 填写Cookie键,Cookie值,Cookie作用的域。(手动添加Cookie时填写)

图 5 HTTP Cookie管理器--元件位置 

图 6 HTTP Cookie管理器--相关参数

四、添加http请求

     一个http请求指的是从客户端到服务端的请求信息。

  1. 鼠标右键点击“线程组-->添加-->取样器-->HTTP请求”;
  2. 填写服务器协议、域名或IP地址、端口号、请求类型、路径、参数等。(HTTP请求默认值已设置的参数不填写,可直接调用)
  3. 自动重定向:如果选中该项,发出的http请求得到响应是301/302,jmeter会重定向到新的界面
  4. 使用keep Alive:jmeter 和目标服务器之间使用 Keep-Alive方式进行HTTP通信。(默认选中)

图 7 HTTP请求--元件位置

图 8 HTTP请求--相关参数

  • 注意事项

(1)常用请求方法

get:从指定的资源请求数据。(把参数包含在URL中)

post:向指定的资源提交要被处理的数据。(通过request body传递参数将请求整体提交给服务器)

(2)参数化方式

       一般来说,Get请求用Parameters。

       Post请求,根据post请求数据的格式,分两种情况:map格式、json格式。当post请求数据为map格式,即参数名、参数值为key-value键值对,请求的参数添加在Parameters参数表中即可;post请求数据为json格式时,将json格式的请求数据加入到http请求BodyData中。(json规则:缩进一定要准确,参数名与值要用””包住,并用英文逗号隔开,在这里也可以引用其他接口的出参,格式如其它接口一样“${参数名}”,最后一组参数不要加逗号

       由于POST请求方式,如果不设置Headers的content-type,基本默认会以 application/x-www-form-urlencoded 方式提交数据。为了Post请求确保传的是json格式,还需要在HTTP信息头管理器中设置:Content-Type为application/json。

(3)Content-Type方式

content-type:  application/x-www-form-urlencoded

       如果不指定content-type,默认使用此格式。

       参数可以在Parameters或Body Data里输入(只能使用其中一个),格式不同。

       传参格式:key1=value1&key2=value2

content-type:  application/json

       要添加http信息头管理器(Content-Type为application/json),在http请求中的“BodyData”中输入参数。

传参格式

{

 "key1":"value1",

 "key2":"value2"

}

      注:数据类型为list格式时,不需要参数名称,直接在“BodyData”中输入:[“value1”,”value2”,”value3”]

form-data(很少用到)

       在http请求中一定要勾选“use multipart/from-data for POST”,Parameters中输入除了上传的文件以外的参数:参数名和参数值,Files Upload中上传文件,参数名和MIME类型。

       传参格式:name="XXXX";value="XXXX"

(4)参数中有中文时,需要将编码方式配置为:utf-8,参数行勾选编码。

五、添加HTTP信息头管理器

       用于定制HTTP请求的请求头内容,在请求需要一些验证信息时使用的较多,在http请求之前添加一个HTTP信息头管理器,将所需的头信息以键值对的方式添加进去,能够更真实的模拟该接口的访问,在后边的HTTP请求发送时则将使用该管理器中的header信息。

       注:同一作用域下,不论添加多少个信息头管理器, 只会取第一个管理器的值, 不合并

       示例:接口文档中content-type为:application/json时,需要配置HTTP信息头管理器,并且参数要在消息体数据中输入。并且配置的信息头管理器一定要放在各自的http请求下,不要放在总线程下,不然格式不同时,不能共用,就会容易出错。

  1. 鼠标右键点击“http请求-->添加-->配置元件-->HTTP信息头管理器”;
  2. 填写信息头名称和值。

图 9 HTTP信息头管理器--元件位置

图 10 HTTP信息头管理器--相关参数

六、添加响应断言

      响应断言可以对服务器的响应接口进行断言校验,来判断接口测试得到的接口返回值是否正确。

  1. 鼠标右键点击“http请求-->添加-->断言-->响应断言”;
  2. apply to:通常发出一个请求只触发一个请求,所以勾选“main sampie only”就可以;若发一个请求可以触发多个服务器请求,就有main sample 和sub-sample之分了;
  3. 测试字段:一般的http响应,都勾选“响应文本”;
  4. 模式匹配:包括(返回结果包括你指定的内容,支持正则匹配),匹配和相等(效果相同,当返回值固定时,可以返回值做断言),字符串(与 “包括”差不多,都是指返回结果包括你指定的内容,但是不支持正则字符串);
  5. 测试模式:输入结果期望值(空格要去掉,与响应数据对应)。

图 11 响应断言--元件位置

图 12 响应断言--相关参数

七、添加察看结果树

      添加察看结果树可以看到请求的发送和返回信息,判断返回的请求是否正确。

      http响应指的是从服务端到客户端的响应消息,包括响应状态码,响应头,响应报文。

  1. 鼠标右键点击“线程组-->添加-->监听器-->察看结果树”;
  2. 执行测试后,就可以在察看结果树里看到详细请求信息;
  3. 查看结果树中执行成功的请求在左侧会显示绿色,执行失败会显示红色。(当我们没有加断言时,显示绿色并不一定就是成功了,只代表响应码是200或300系列,显示红色说明响应码是400或500系列,所以要想确定请求返回的是正确的,必须要加上断言,只有断言成功才会显示绿色)

图 13 察看结果树--元件位置

图 14 察看结果树-相关参数

八、jmeter快捷键 

快捷键

功能

备注

Ctrl+C

复制

可复制组件

Ctrl+V

粘贴

可粘贴组件

Ctrl + Shift + C

复制粘贴当前组件到下一行

Ctrl + R

运行测试计划

Ctrl + E

清空运行结果

Ctrl + T

启用/禁用当前组件

可以多选

Ctrl + F

全文搜索

一般用来搜索组件, 搜索完成后可点击Search -> Reset Search恢复

Ctrl + -

全部收起

“-“为主键盘的减号

Ctrl + Shift + -

全部展开

“-“为主键盘的减号

Ctrl + G

当前节点截屏

Ctrl +0

创建线程组

Ctrl +1

新增HTTP请求

Ctrl +2

正则表达式提取器

Ctrl +3

响应断言

Ctrl +4

固定定时器

Ctrl +5

测试活动

Ctrl +7

JSR223 预处理程序

Ctrl +8

调试取样器

Ctrl +9

察看结果树

  • 9
    点赞
  • 64
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值