get、post请求方式在jmeter中使用步骤

jmeter:性能测试工具,压测

一、jmeter工具测试接口时使用步骤:

 1、测试计划右键--添加--Threads(Users)--线程组(线程数就是并发数)

get、post请求方式在jmeter中使用步骤_第1张图片

2、线程组右键--Sampler--HTTP请求--填写域名或IP、端口默认80,选择请求方式get,输入接口url域名后面的路径以及?后面的参数及值,最上面的请求名称可以进行修改--点击上面的运行按钮去查看

get、post请求方式在jmeter中使用步骤_第2张图片

3、查看:右键线程组--添加--监听器--察看结果树--点击上面的运行按钮,查看返回值

get、post请求方式在jmeter中使用步骤_第3张图片

 

二、接口测试的情况:

1、get请求方式:

使用步骤:使用上面的操作步骤填写好域名或ip--请求民称修改--请求方式以及域名后面的url路径以及参数--进行查看

get、post请求方式在jmeter中使用步骤_第4张图片

2、post请求方式(最简单的post请求,只有键值对时)

按照jmeter使用步骤填写好域名、路径、post方式、请求名称--在Parameters中添加key-value-再去运行查看结果树

get、post请求方式在jmeter中使用步骤_第5张图片

几个接口中存在公共元素时,比如域名或参数,可以设置公共元素

右键线程组--添加--配置元件--HTTP请求默认值--比如设置域名或参数--回到接口中去掉域名或参数--再去运行查看--仍然返回同样的结果

get、post请求方式在jmeter中使用步骤_第6张图片

3、当post请求,入参为json时,在Body Data中输入{}和一个个键值对,如get、post请求方式在jmeter中使用步骤_第7张图片

4、post请求方式,且存在单个cookie时(用HTTP Cookie管理器)

题目:该接口有权限验证,需要admin用户才可以做操作,需要添加cookie

cookie中key为登录的用户名,value从登录接口中获取,登陆成功之后会返回sign

使用步骤:右键接口--添加--配置元件--HTTP Cookie管理器--添加按钮--名称填写登录用户名,value填写登录接口中这个用户登录成功之后返回的sign值,域名填写域名--再回到接口中填写key-value值、post方式、域名和url即可

get、post请求方式在jmeter中使用步骤_第8张图片

5、上面的情况仅适用于只有一个cookie值时,当cookie含有多个键值对(用HTTP信息头管理器)时,采用以下办法:

比如qq群管理--qun.qq.com登录之后访问群管理--F12--Network--刷新--XHR

选择左下侧的get_group_list或get_friend_list或search_group_memebers可以查看到实际的结果值,

5.1到postman里面去输入url(F12查看的Headers里面的Request URL),选择post方式,输入cookie和值(Request Headers里面的cookie值),以及键值对key-value(F12Headers最下面的form-data就是输入参数)

5.2到jmeter中输入域名、url--选择post方式--以及键值对(F12Headers最下面的form-data)--然后右键接口--添加--配置元件--HTTP信息头管理器--名称为cookie,值为很多个键值对的cookie值

get、post请求方式在jmeter中使用步骤_第9张图片get、post请求方式在jmeter中使用步骤_第10张图片

 

6、文件上传接口

使用步骤:接口中选择post方式--填写域名、路径--选择Files Upload--浏览--上传文件,在参数名称中填写参数即可

如果查看的时候报错,在接口中MIME中填写txt即可

get、post请求方式在jmeter中使用步骤_第11张图片

 

三、参数化:

1、random随机范围:选项--函数助手对话框--选择_Random--输入最小最大值--点击生成--复制生成的函数字符串--放到接口中要参数化的地方,比如我复制0000-9999生成的随机数,复制到手机号的后4位--再去运行的时候可以看到随机生成的手机号,也可以在线程组里将循环次数设置5次,点击一次运行,就会自动运行5次,生成5次结果

get、post请求方式在jmeter中使用步骤_第12张图片

 

get、post请求方式在jmeter中使用步骤_第13张图片

断言(自动帮你校验返回的是否正确):右键接口--添加--断言--响应断言--模式匹配规则改为“包括”--下面的测试的模式写为接口返回结果中的一个参数名--如果最终接口返回值中不含有这个参数名,运行就会报错

get、post请求方式在jmeter中使用步骤_第14张图片

 

2、time时间戳(从计算机诞生那一天到现在过了多少秒):选项--函数助手对话框--选择_time--输入年月日时分秒的表达方式--点击生成--复制函数字符串到接口中,在去运行几次看结果

get、post请求方式在jmeter中使用步骤_第15张图片

3、用户定义的变量:右键线程组--添加--配置元件--用户定义的变量--设置名称和值:比如名称随便写一个(host),值为域名(aa.bb.com),那前面接口中需要调用这个相同域名的地方,改成${host}就可以了

get、post请求方式在jmeter中使用步骤_第16张图片

get、post请求方式在jmeter中使用步骤_第17张图片

4、CSV Data Set Config读取文件中的数据:右键接口--添加--配置元件--CSV Data Set Config

4.1、当文件中是单行数据时,比如1    2   3   4都是换行显示的:filename设置文件的绝对路径C:\Users\LIXUELIAN\Desktop\单行数据.txt,Variables Names写参数名userid,去添加学生接口,调用${userid},察看结果时,会看到返回三年1班,三年2班,三年3班......

get、post请求方式在jmeter中使用步骤_第18张图片

get、post请求方式在jmeter中使用步骤_第19张图片

get、post请求方式在jmeter中使用步骤_第20张图片

get、post请求方式在jmeter中使用步骤_第21张图片

4.2、当文件中含有多个参数时,用,隔开:Filename设置文件的绝对路径--设置多个参数名,中间用英文的,隔开,Delimiter表示用什么隔开(这里就是,)--登录接口设置用户名和密码的参数化,如下图3--再去查看结果返回的是否正确

get、post请求方式在jmeter中使用步骤_第22张图片

get、post请求方式在jmeter中使用步骤_第23张图片

get、post请求方式在jmeter中使用步骤_第24张图片

5、cookie的参数化:要从上一个接口中获取到的动态值传给下一个接口(登录接口中的sign值传给金币充值接口)

思路:1.先从登录接口中获取sign值--先添加后置处理器jp@gc - JSON Path Extractor

get、post请求方式在jmeter中使用步骤_第25张图片

2.读取登录接口中的sign值--$.login_info.sign

get、post请求方式在jmeter中使用步骤_第26张图片

 

get、post请求方式在jmeter中使用步骤_第27张图片

3.回到金币充值接口--在HTTP Cookie管理器中,设置用户名${username}、cookie值${sessionid}的参数化,或是在HTTP信息头管理器中设置${username}=${sessionid}

get、post请求方式在jmeter中使用步骤_第28张图片get、post请求方式在jmeter中使用步骤_第29张图片

转载于:https://www.cnblogs.com/mihoutao/p/10546551.html

你可能感兴趣的:(json,测试,postman)