优秀的编程知识分享平台

网站首页 > 技术文章 正文

JMeter测试HTTP GET请求(附实例)(jmeter websocket)

nanyue 2024-11-06 11:16:51 技术文章 3 ℃

一、HTTP Request配置项解析

● Web Server:

1.Protocol [http]:

○ 若为HTTP协议可以不填写(默认为HTTP);

○ 若为HTTPS协议可以填写“https”;还可以为FILE协议(本地文件传输协议);

2.Server Name or IP:

HTTP/Web服务器的域名或IP地址,本机可以使用localhost或127.0.0.1表示;

3.Port Number:

HTTP/Web服务器的监听端口,若为HTTP协议,默认端口为80;若为HTTPs协议,默认端口为443。

使用默认端口可以不填,非默认端口必填。

● HTTP Request:

1.Method:

请求方法,测试GET请求,请选择“GET”。

2.Path:

HTTP请求行中的request-target,可以使用绝对地址或相对地址。

比如: http://www.test.com/ecshop/index.php (绝对地址) /ecshop/index.php(相对地址)

注意: 若使用绝对地址,则会覆盖“Web Server”中的配置。

3.Content-encoding:

通常用于在发送POST、PUT、PATCH请求时对message-body进行内容编码,以防止请求出现乱码或服务器无法正确处理请求。

注意其与请求的首部字段“Content-encoding”无关。

4.Redirect Automatically:

自动重定向。在JMeter中不记录重定向的过程,只能看到最终的重定向请求。

5.Follow Redirects:

跟随重定向。在JMeter会详细记录重定向的过程,可以看到多个重定向请求。其中4与5是互斥的。

比如,使用http://www.sina.com.cn/访问新浪,会有一次重定向:

○ 第一次请求: GET http://www.sina.com.cn/ 重定向返回: Location: https://www.sina.com.cn/

○ 第二次请求: GET https://www.sina.com.cn/

若设置自动重定向,在查看结果树中只能看到最终的请求:GET https://www.sina.com.cn/

若设置跟随重定向,可以看到全部的两次请求。

6.Use KeepAlive:

勾选在请求中加入首部字段“Connection: Keep-Alive”,否则设置为“Connection: Close”,默认为勾选。

7.Use multipart/form-data:

是否以multipart/form-data传输message-body。

8.Browser-compatible headers:

勾选此项,在使用multipart/form-data时,会抑止Content-Type与Content-Transfer-Encoding首部字段,仅发送Content-Disposition首部字段。

二、应用案例

▲ 测试案例说明

1. 接口说明:

查询被购买商品的总金额接口

2. 请求方式:

HTTP GET请求

3.接口地址:

/ecshop/upload/goods.php

4. 请求参数:

1) 输入参数:

2) 请求示例:

GET
/ecshop/upload/goods.php?act=price&id=9&attr=227&number=1&1551081863462462
HTTP/1.1
Accept: */*
X-HttpWatch-RID: 22945-10042
Referer: http://localhost/ecshop/upload/goods.php?id=9
Accept-Language: zh-Hans-CN,zh-Hans;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0)
like
Gecko
Host: localhost
Connection: Keep-Alive
Cookie: ECS[history]=9; ECS[visit_times]=2;
ECS_ID=2a50bfdc24b5443814e73a5783912e21a55af811

5. 返回参数:

1) 响应参数:

2) 响应实例:

HTTP/1.1 200 OK
Date: Mon, 25 Feb 2019 08:16:27 GMT
Server: Apache/2.2.4 (Win32) PHP/5.2.4
X-Powered-By: PHP/5.2.4
Cache-control: private
Content-Length: 50
Keep-Alive: timeout=5, max=86
Connection: Keep-Alive
Content-Type: text/html; charset=utf-8
{"err_msg":"","result":"\uffe52298\u5143","qty":1}

▲ 测试步骤

1.在“Test Plan”节点上右键,选择Add-->Threads(users)-->Thread Group;

2.在“Thread Group”节点上右键,选择Add-->Sampler-->HTTP Request;

3.在“HTTP Request”节点上右键,选择Add-->Listener-->View Results Tree;

4.选中“HTTP Request”对HTTP请求进行配置;

5.点击“Save”,保存测试计划;

6.点击“Start”,运行JMeter测试。

HTTP GET请求的参数有两种基本的配置方法:

1. 放在Path配置项中:

2. 放在Parameters选项卡中:

最近发表
标签列表