从0开始Jmeter接口测试实战
在之前的文章中给大家介绍过接口测试文档和接口测试用例示例,本文基于Jmeter工具给大家介绍一下如何实现接口测试用例:包括发起Http请求,绕过登陆,验证响应。JMeter是Apache组织开发的基于Java的压力测试工具。具有开源免费、框架灵活、多平台支持等优势。除了压力测试外,JMeter在接口测试方面也有广泛的应用。
接口测试用例示例
组织测试用例
Jmeter是绿色安装,官网(https://jmeter.apache.org/download_jmeter.cgi)下载安装包以后解压即可使用。打开Jmeter,命名测试计划,在测试计划下新建线程组,在线程组下编写接口请求,保存Jmeter测试计划为Jmeter脚本(.jmx文件)。
一个Jmeter测试计划下可以有多个线程组,一个Jmeter线程组下可以有多个Jmeter请求
Jmeter测试计划对应手工测试用例的Suite,Jmeter线程组对应手工测试用例的TestCase,Jmeter请求对应手工测试用例的Test Step
根据接口测试用例,编写出如下测试脚本大纲:
发起Http请求
Http请求包含三部分,Jmeter使用Sampler->Http请求 发起Http请求
请求行(HTTP协议和请求的URL,在Http请求中编写)
请求头(头信息,选填,可在Http信息头管理器中编写请求头信息)
请求体(POST请求有请求体信息,GET请求的参数在请求行当中,在Http请求中编写)
以新增用户成功为例,主要编写如下信息:
测试服务器信息:协议,服务器名称或IP,服务器端口号
接口信息:接口路径和接口方法
接口请求参数
绕过登陆
服务端通常都有认证授权机制,在成功发起接口请求并且获取结果以前是需要绕过登陆的,根据不同的认证授权机制,Jmeter提供了不同的组件支持,本示例是通过Cookie绕过登陆。通过Cookie绕过登陆需要添加HttpCookie管理器,在Cookie管理器中添加相应的Cookie信息,可以通过Chorme工具抓取Cookie信息。
断言响应结果
发起Http请求是为了获取响应结果并进行数据验证,Jmeter提供了多种断言组件(响应断言,Json断言,Beanshell断言),本文基于Json断言实现响应报文的校验。选中Http请求,右键添加JSON Assertion,提取响应报文的内容并判定响应报文和预期的结果是否一致,此处通过验证响应消息为“保存会员成功”来验证请求成功的执行并返回结果。
获取接口测试运营结果
运行Jmeter脚本,通过添加监听器监听测试结果,通常用查看结果树来监听测试结果,详情如下:
至此,一个简单的Jmeter脚本就编写完毕,在实际的接口测试实现过程中,还需要考虑参数化,多接口的参数传递,数据库的处理,同学们可以参照官网示例不断学习,后续公众号也会继续讲解~
作 者:Testfan Kitty
出 处:微信公众号:自动化软件测试平台
版权说明:欢迎转载,但必须注明出处,并在文章页面明显位置给出文章链接
从0开始Jmeter接口测试实战的更多相关文章
- jmeter接口测试实战-创建用户
jmeter接口测试实战-创建用户 相信大多数看到标题的同学都会有疑问, 创建用户不是很简单吗, 调用一下创建用户接口, 传入指定入参, 用户即可创建成功, 今天我们的实战来讲讲创建场景.通过接口创建 ...
- JMeter接口测试实战-动态数据验证
JMeter接口测试实战-动态数据验证 说到验证就不得不说断言, 先来看下JMeter官方给出断言(Assertion)的定义, 用于检查测试中得到的响应数据等是否符合预期,用以保证测试过程中的数据交 ...
- Jmeter接口测试实战-数据传递
Jmeter接口测试实战-数据传递 接口与接口之间没有关联的测试是缺乏意义和没有灵魂的,只有数据在不同接口之间传递才能勾画出业务场景重要的链路. 我们用较为通用的http/https协议,接口普遍返回 ...
- Jmeter 接口测试实战-有趣的cookie
Jmeter 接口测试实战-有趣的cookie 场景: 接口测试时常都需要登录,请求方式(post), 登录常用的方法有通过获取token, 获取session, 获取cookie, 等等. 这几种都 ...
- 【JMeter】【微信好文收藏】Jmeter接口测试实战-有趣的cookie
场景: 接口测试时常都需要登录,请求方式(post), 登录常用的方法有通过获取token, 获取session, 获取cookie, 等等. 这几种都有一个共同的特点, 有效期(expires). ...
- Jmeter接口测试实战-Cookies
场景: 接口测试时常都需要登录,请求方式(post), 登录常用的方法有通过获取token, 获取session, 获取cookie, 等等. 这几种都有一个共同的特点, 有效期(expires). ...
- Jmeter接口测试实战之HTTP Cookie管理器(十二 )
在使用测试工具Jmeter做接口测试中,怎么记录下它登录成功后的信息,在接口测试的应用场景中,一般对业务的操作都是基于用户登录情况下的操作.它的测试步骤相对来说很简单的,其实在Jmeter的测试工具中 ...
- jmeter接口测试实战简例
1.接口需求文档说明 2.打开jmeter,新建线程组,线程组里面默认配置就可以 3.建立http请求,我这里是http请求,所以我选择这个,跟进实际情况 4.post请求说明,post直接加参数和参 ...
- jmeter接口测试实战
请求方法:get/post 接口请求地址:http://172.22.24.26:8080/fundhouse/external/getdata?name=xxxx &fund_udid=35 ...
随机推荐
- linux常用命令(9)nl命令
nl命令在linux系统中用来计算文件中行号.nl 可以将输出的文件内容自动的加上行号!其默认的结果与 cat -n 有点不太一样, nl 可以将行号做比较多的显示设计,包括位数与是否自动补齐 0 等 ...
- VMWare虚拟机->锁定文件失败,打不开磁盘的解决办法
VMWare虚拟机提示:锁定文件失败,打不开磁盘的解决办法 如果使用VMWare虚拟机的时候突然系统崩溃蓝屏,有一定几率会导致无法启动,会提示:“锁定文件失败,打不开磁盘...或它所依赖的某个快照 ...
- C/C++之编程语言学习资源
前言 因朋友相问,藉以帮助需要学习C.C++语言的后来小伙伴. 网络视频资源 选择其中一系列即可,切忌贪多嚼不烂. [系列1:可能会面临开课时间错过的问题,二门课程只要能上其一即可,均为浙大翁恺老师的 ...
- python3.4 + pycharm安装与使用
因个人是windows的环境,所以本文只讲windows环境下的python安装. 作为初用python的盆友,强烈建议只在电脑上装一个python版本就好了,不然就进了各种坑里了. Python安装 ...
- 如何为Redis中list中的项设置过期时间
问题 两种解决方法 有序集合 多个集合以及TTL Redis是一个伟大的工具,用来在内存中存储列表是很合适的. 不过,如果你想要快速搜索列表,同时需要让列表中每项都在一定时间后过期,应该怎么做呢? 首 ...
- Pytorch1.0深度学习:损失函数、优化器、常见激活函数、批归一化详解
不用相当的独立功夫,不论在哪个严重的问题上都不能找出真理:谁怕用功夫,谁就无法找到真理. —— 列宁 本文主要介绍损失函数.优化器.反向传播.链式求导法则.激活函数.批归一化. 1 经典损失函数 1. ...
- Msf小结
Msfvenom是有效负载生成和编码的组合. 生成攻击载荷 Linux下反弹Meterpreter shell 1 msfvenom -p linux/x86/meterpreter/reverse_ ...
- 【并行计算-CUDA开发】Windows下opencl环境配置
首先声明我这篇主要是根据下面网站的介绍, 加以修改和详细描述,一步一步在我自己的电脑上实现的, http://www.cmnsoft.com/wordpress/?tag=opencl&pag ...
- [转帖]ORA-00600-[kcratr_nab_less_than_odr]问题小记
ORA-00600-[kcratr_nab_less_than_odr]问题小记 2018年03月12日 20:56:57 我不是VIP 阅读数 1500 https://blog.csdn.ne ...
- 不同浏览器之间的javascript和css兼容性问题
po主手头维护的网站是上世纪的作品.当时约摸ie所占的市场份额相当大,以至于开发人员都没有考虑到浏览器兼容性问题(这不科学!).怎奈po主是个强迫症阿.最近在修改的时候,还是没忍住,把兼容性问题解决了 ...