get、post请求方式在jmeter中使用步骤
jmeter:性能测试工具,压测
一、jmeter工具测试接口时使用步骤:
1、测试计划右键--添加--Threads(Users)--线程组(线程数就是并发数)
2、线程组右键--Sampler--HTTP请求--填写域名或IP、端口默认80,选择请求方式get,输入接口url域名后面的路径以及?后面的参数及值,最上面的请求名称可以进行修改--点击上面的运行按钮去查看
3、查看:右键线程组--添加--监听器--察看结果树--点击上面的运行按钮,查看返回值
二、接口测试的情况:
1、get请求方式:
使用步骤:使用上面的操作步骤填写好域名或ip--请求民称修改--请求方式以及域名后面的url路径以及参数--进行查看
2、post请求方式(最简单的post请求,只有键值对时)
按照jmeter使用步骤填写好域名、路径、post方式、请求名称--在Parameters中添加key-value-再去运行查看结果树
当几个接口中存在公共元素时,比如域名或参数,可以设置公共元素
右键线程组--添加--配置元件--HTTP请求默认值--比如设置域名或参数--回到接口中去掉域名或参数--再去运行查看--仍然返回同样的结果
3、当post请求,入参为json时,在Body Data中输入{}和一个个键值对,如
4、post请求方式,且存在单个cookie时(用HTTP Cookie管理器)
题目:该接口有权限验证,需要admin用户才可以做操作,需要添加cookie
cookie中key为登录的用户名,value从登录接口中获取,登陆成功之后会返回sign
使用步骤:右键接口--添加--配置元件--HTTP Cookie管理器--添加按钮--名称填写登录用户名,value填写登录接口中这个用户登录成功之后返回的sign值,域名填写域名(这个域名和HTTP请求默认值填写的域名没有关系,这里需要写)--再回到接口中填写key-value值、post方式、域名和url即可
5、HTTP信息头管理器:适用于1、cookie含有多个键值对 2、没有cookie,只有请求头header时的情况,也用HTTP信息头管理器
5.1、上面的情况仅适用于只有一个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值
5.2、当含有请求头时,也用HTTP信息头管理器
6、文件上传接口
使用步骤:接口中选择post方式--填写域名、路径--选择Files Upload--浏览--上传文件,在参数名称中填写参数即可
如果查看的时候报错,在接口中MIME中填写txt即可
三、参数化:
1、random随机范围:选项--函数助手对话框--选择_Random--输入最小最大值--点击生成--复制生成的函数字符串--放到接口中要参数化的地方,比如我复制0000-9999生成的随机数,复制到手机号的后4位--再去运行的时候可以看到随机生成的手机号,也可以在线程组里将循环次数设置5次,点击一次运行,就会自动运行5次,生成5次结果
断言(自动帮你校验返回的是否正确):右键接口--添加--断言--响应断言--模式匹配规则改为“包括”--下面的测试的模式写为接口返回结果中的一个参数名--如果最终接口返回值中不含有这个参数名,运行就会报错
2、time时间戳(从计算机诞生那一天到现在过了多少秒):选项--函数助手对话框--选择_time--输入年月日时分秒的表达方式--点击生成--复制函数字符串到接口中,在去运行几次看结果
3、用户定义的变量:右键线程组--添加--配置元件--用户定义的变量--设置名称和值:比如名称随便写一个(host),值为域名(aa.bb.com),那前面接口中需要调用这个相同域名的地方,改成${host}就可以了
4、CSV Data Set Config读取文件中的数据:右键接口--添加--配置元件--CSV Data Set Config
4.1、当文件中是单行数据时,比如1 2 3 4都是换行显示的:filename设置文件的绝对路径C:\Users\LIXUELIAN\Desktop\单行数据.txt,Variable Names写参数名userid,去添加学生接口那里,调用${userid},察看结果时,会看到返回三年1班,三年2班,三年3班......
4.2、当文件中含有多个参数时,用,隔开:Filename设置文件的绝对路径--设置多个参数名,中间用英文的,隔开,Delimiter表示用什么隔开(这里就是,)--登录接口设置用户名和密码的参数化,如下图3--再去查看结果返回的是否正确
5、cookie的参数化:要从上一个接口中获取到的动态值传给下一个接口(登录接口中的sign值传给金币充值接口)
思路:1.先从登录接口中获取sign值--先添加后置处理器jp@gc - JSON Path Extractor
2.读取登录接口中的sign值--$.login_info.sign
3.回到金币充值接口--在HTTP Cookie管理器中,设置用户名${username}、cookie值${sessionid}的参数化,或是在HTTP信息头管理器中设置${username}=${sessionid}
get、post请求方式在jmeter中使用步骤的更多相关文章
- get、post请求方式在postman中使用步骤
1.get请求方式:不需要借助任何工具,在浏览器里面就可以发送请求,直接在浏览器里面输入访问 url?参数名=参数值 url?parma=abc&name=abcd 2.post请 ...
- 【转】JMeter中使用Selenium进行测试
JMeter是使用非常广泛的性能测试工具,而Selenium是ThroughtWorks 公司一个强大的开源Web 功能测试工具.Jmeter和Selenium结合使用,就可以实现对网站页面的自动化性 ...
- 如何在JMeter中使用ForEach控制器
Jmeter中的ForEach Controller遍历变量数组. 在这个JMeter教程中,我们将使用ForEach控制器循环访问JSON数组. 有时我们需要解析响应并提取某些信息.例如,在测试AP ...
- jQuery中ajax的4种常用请求方式
jQuery中ajax的4种常用请求方式: 1.$.ajax()返回其创建的 XMLHttpRequest 对象. $.ajax() 只有一个参数:参数 key/value 对象,包含各配置及回调函数 ...
- WEB API 中HTTP的get、post、put,delete 请求方式
一.WEB API 中HTTP 请求方式的四个主要方法 (GET, PUT, POST, DELETE), 按照下列方式映射为 CURD 操作: 1.POST 用于新建资源,服务端在指定的URI 上创 ...
- Ajax中的get和post两种请求方式的异同
Ajax中我们经常用到get和post请求.那么什么时候用get请求,什么时候用post方式请求呢? 在做回答前我们首先要了解get和post的区别. 1. get是把参数数据队列加到提交表单的A ...
- jQuery中的Ajax几种请求方式
1. load( url, [data], [callback] ) :载入远程 HTML 文件代码并插入至 DOM 中. url (String) : 请求的HTML页的URL地址. data (M ...
- 转:Ajax中的get和post两种请求方式的异同
1. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到.post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML ...
- HTTP协议请求方式: 中GET、POST和HEAD的介绍以及错误提示码
HTTP协议中GET.POST和HEAD的介绍 2008-05-10 14:15 GET: 请求指定的页面信息,并返回实体主体. HEAD: 只请求页面的首部. POST: 请求服务器接受所指定的文档 ...
随机推荐
- SourceTreet提交时显示remote: Incorrect username or password ( access token )(4种解决办法)
引言 我因为第一次安装Sources Tree的时候进行破解时(跳过安装时的登录),因为操作失误造成了好多bug,导致Sources Tree不论提交,拉取,获取,都会报remote: Incorre ...
- MD5算法——C++实现
MD5算法原理 MD5消息摘要算法,属Hash算法一类.MD5算法对输入任意长度的消息进行运行,产生一个128位的消息摘要. 具体实现可参考博客 https://blog.csdn.net/sinat ...
- golang中type关键字使用
type关键字使用 type是go语法里的重要而且常用的关键字,type绝不只是对应于C/C++中的typedef.搞清楚type的使用,就容易理解go语言中的核心概念struct.interface ...
- 45道Promise面试题
来看看通过阅读本篇文章要点: Promise的几道基础题 Promise结合setTimeout Promise中的then.catch.finally Promise中的all和race async ...
- Python+Pytest+Allure+Git+Jenkins接口自动化框架
Python+Pytest+Allure+Git+Jenkins接口自动化框架 一.接口基础 接口测试是对系统和组件之间的接口进行测试,主要是效验数据的交换,传递和控制管理过程,以及相互逻辑依赖关系. ...
- 精讲RestTemplate第9篇-如何通过HTTP Basic Auth认证
本文是精讲RestTemplate第9篇,前篇的blog访问地址如下: 精讲RestTemplate第1篇-在Spring或非Spring环境下如何使用 精讲RestTemplate第2篇-多种底层H ...
- 《Java从入门到失业》第一章:计算机基础知识(二):计算机组成及基本原理
1.2计算机组成及基本原理 1.2.1硬件组成 这里说的计算机主要指微型计算机,俗称电脑.一般我们见到的有台式机.笔记本等,另外智能手机.平板也算.有了一台计算机,我们就能做很多事情了,比如我在写这篇 ...
- sudo 提权漏洞(CVE-2019-14287)复现
(该文参考网络他人资料,仅为学习,不许用于非法用途) 一.环境 1.sudo版本小于1.8.28的Linux系统 2.sudo 是Linux系统命令,让普通账号以root身份去执行某些命令,比如:安装 ...
- Jmeter 常用函数(13)- 详解 __machineIP
如果你想查看更多 Jmeter 常用函数可以在这篇文章找找哦 https://www.cnblogs.com/poloyy/p/13291704.html 作用 返回机器(电脑)IP 语法格式 ${_ ...
- 【故障公告】阿里云 RDS 数据库突发 CPU 近 100% 引发全站故障
今天晚上9点我们收到阿里云的告警通知: [阿里云监控]华东1(杭州)-云数据库RDS版<cnblogsdb> [instanceId=xxx] 于21:00 发生告警, 前往诊断 CPU使 ...