在之前的文章中给大家介绍过接口测试文档和接口测试用例示例,本文基于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接口测试实战的更多相关文章

  1. jmeter接口测试实战-创建用户

    jmeter接口测试实战-创建用户 相信大多数看到标题的同学都会有疑问, 创建用户不是很简单吗, 调用一下创建用户接口, 传入指定入参, 用户即可创建成功, 今天我们的实战来讲讲创建场景.通过接口创建 ...

  2. JMeter接口测试实战-动态数据验证

    JMeter接口测试实战-动态数据验证 说到验证就不得不说断言, 先来看下JMeter官方给出断言(Assertion)的定义, 用于检查测试中得到的响应数据等是否符合预期,用以保证测试过程中的数据交 ...

  3. Jmeter接口测试实战-数据传递

    Jmeter接口测试实战-数据传递 接口与接口之间没有关联的测试是缺乏意义和没有灵魂的,只有数据在不同接口之间传递才能勾画出业务场景重要的链路. 我们用较为通用的http/https协议,接口普遍返回 ...

  4. Jmeter 接口测试实战-有趣的cookie

    Jmeter 接口测试实战-有趣的cookie 场景: 接口测试时常都需要登录,请求方式(post), 登录常用的方法有通过获取token, 获取session, 获取cookie, 等等. 这几种都 ...

  5. 【JMeter】【微信好文收藏】Jmeter接口测试实战-有趣的cookie

    场景: 接口测试时常都需要登录,请求方式(post), 登录常用的方法有通过获取token, 获取session, 获取cookie, 等等. 这几种都有一个共同的特点, 有效期(expires). ...

  6. Jmeter接口测试实战-Cookies

    场景: 接口测试时常都需要登录,请求方式(post), 登录常用的方法有通过获取token, 获取session, 获取cookie, 等等. 这几种都有一个共同的特点, 有效期(expires). ...

  7. Jmeter接口测试实战之HTTP Cookie管理器(十二 )

    在使用测试工具Jmeter做接口测试中,怎么记录下它登录成功后的信息,在接口测试的应用场景中,一般对业务的操作都是基于用户登录情况下的操作.它的测试步骤相对来说很简单的,其实在Jmeter的测试工具中 ...

  8. jmeter接口测试实战简例

    1.接口需求文档说明 2.打开jmeter,新建线程组,线程组里面默认配置就可以 3.建立http请求,我这里是http请求,所以我选择这个,跟进实际情况 4.post请求说明,post直接加参数和参 ...

  9. jmeter接口测试实战

    请求方法:get/post 接口请求地址:http://172.22.24.26:8080/fundhouse/external/getdata?name=xxxx &fund_udid=35 ...

随机推荐

  1. nodejs相关

    安装: 1:下载 Node.js 安装包及源码下载地址为:https://nodejs.org/en/download/. 32 位安装包下载地址 : https://nodejs.org/dist/ ...

  2. MySQL随机字符串函数批量插入数据

      简单举个例子: drop table if exists demo1 create table demo1 ( id int primary key auto_increment, name ) ...

  3. 使用命令行方式运行 JMeter 脚本

    For non-interactive testing, you may choose to run JMeter without the GUI. To do so, use the followi ...

  4. vue修饰符 .lazy .number .trim

    .lazy 在输入框中,v-model 默认是同步数据,使用 .lazy 会转变为在 change 事件中同步 , 也就是在失去焦点 或者 按下回车键时才更新 <template> < ...

  5. 华为HCNA乱学Round 10:PPP&PAP

  6. 关于Linux文本处理“三剑客”的一些小操作。

    Linux文本处理“三剑客”,即grep.sed.awk,这是Linux中最核心 的3个命令. 一.首先做个简单的介绍: 1.awk:linux三剑客老大,过滤,输出内容,一门语言.NR代表行号. 2 ...

  7. 5.写一个sh脚本,可以通过一台机器控制多台机器

    先创建一个脚步文件 对这个脚本进行编辑 [hadoop@node1 ~]$ vim xcall.sh 给脚本赋予权限 执行脚本 把脚本移动到 /usr/local/bin/目录下 [hadoop@no ...

  8. 【转贴】Windows virtio 驱动

    Windows virtio 驱动 https://blog.51cto.com/dangzhiqiang/1833615 去年去中建总部的时候用过. 发现很多搞openstack的人都不清楚这一块的 ...

  9. (5.8)mysql高可用系列——MySQL中的GTID复制(实践篇)

    一.基于GTID的异步复制(一主一从)无数据/少数据搭建 二.基于GTID的无损半同步复制(一主一从)(mysql5.7)基于大数据量的初始化 正文: [0]概念 [0.5]GTID 复制(mysql ...

  10. node项目自动化部署--基于Jenkins,Docker,Github(3)自动化部署

    GitHub仓库 由于现在的代码基本上都是多人合作开发,所以肯定会用到像 git 这样的版本控制工具 所以这里使用 GitHub 来做一个演示 首先我们需要在github上新建一个仓库 点击New来新 ...