Jmeter综合运用 之 接口测试
Jmeter用的最多的就是做接口和性能测试了,着实比较好用,今天给大家分享下如何利用Jmeter做接口测试。
在做接口测试之前,我们起码需要了解:
1、接口涉及的业务
2、接口的基本信息:访问地址、传值方式(Post 或 Get)、协议类型、域名或IP、端口、参数
3、接口参数是否加密或者有其他处理加工
很多时候,可能因为各种原因,测试人员是得到不到全面完整的接口文档的,那么这个时候,我需要主动的与开发人员索要或者自己获取(可以采用Fiddler 来抓包)。
下面以一个简单的项目为列:
业务介绍:验证客户登录后获取到相应订单数据。
涉及接口:登录接口、获取订单数据接口(其中参数采用了MD5加密)
直接贴上我的列子,一一给大家介绍:

一、HTTP信息头管理器
这是请求的一些规则,有些接口是必须加这些规则才能通过的。那么我么如何知道这些规则,可以问开发,或者浏览器F12或者抓包工具都可以查看到


二、公共配置和环境判断
这个可以忽略,主要是为了方便切换环境的,因为一般我们在测试环境验证后,还会去UAT或生产环境验证,其域名或IP是不一样的。


三、线程组
线程组里包括 :
CSV Data Set Config :用来存放多个不同的客户登录信息
计数器 :主要是用来方便查看执行了多少个客户(可以忽略),
事务控制器:因为登录和获取订单 对客户操作来说是一个步骤,因此放到事务控制器中,其下包括 登录、获取订单 两个样例
两个样例:登录、获取订单,且登录成功后,才执行获取订单 样例
结果观察树:观察结果
1、CSV Data Set Config


2、计数器

3、事务控制器


4、事务控制器下的样例
样例下面包括:前置处理器、后置处理器、断言

4.1、前置处理器
这里的前置处理器主要处理参数MD5加密、获取时间戳

4.2、后置处理器
这里主要是获取token,当然也可以用正则表达式 都可以

4.3、断言
如果没有找到匹配,则结果树中是红色

4.4、判断是否正确
登录成功了,才能获取订单数据

4.5、获取用户订单数据
同登录样例
5、查看结果树

到这里,脚本就完了,csv文件中可以配置很多客户,在线程组的设置中,设置循环次数,就会循环读取CSV文件中的信息,每次读一行。
大家可以根据自身的需求来做,但是基本的接口验证就是这样的。MD5加密也可以使用java的jar包。
Jmeter综合运用 之 接口测试的更多相关文章
- 用Jmeter+Badboy+Fiddler做接口测试
用Jmeter+Badboy+Fiddler做接口测试 2016-12-05 目录: 1 简介2 Badboy录制3 Jmeter打开Badboy脚本4 用Fiddler抓请求,补充完善脚本5 测试中 ...
- jmeter --- 搭建持续集成接口测试平台(Jenkins+Ant+Jmeter)
jmeter --- 搭建持续集成接口测试平台(Jenkins+Ant+Jmeter) 一.环境准备: 1.JDK:http://www.oracle.com/technetwork/java/jav ...
- 【NO.9】jmeter - 一个完整的接口测试的脚本
使用Jmeter对一个接口地址或者一个页面地址执行N次请求,下面来说说怎么建立一个测试脚本(也称为”测试计划”). 1. 运行Jmeter.bat 双击"Jmeter.bat"文件,稍等片刻后J ...
- jmeter+maven+jenkins自动化接口测试(下)
maven+jmeter已经写好了,可以通过maven来执行jmeter的接口测试脚本,怎样实现定时执行测试并发送报告邮件就需要通过jenkins了(jmeter或者testng也可以结合不同的邮件j ...
- jmeter+maven+jenkins自动化接口测试(上)
代码已上传git(包括调试的jmx,jmeter相关文件等):https://gitlab.com/yinzhenzhi/jmeterandmaven 目的:现在很多人都在做自动化接口的平台,我也正在 ...
- Jmeter压力测试和接口测试
jmeter是apache公司基于java开发的一款开源压力测试工具,体积小,功能全,使用方便,是一个比较轻量级的测试工具,使用起来非常简单.因为jmeter是java开发的,所以运行的时候必须先要安 ...
- Jmeter实现webservice的接口测试
前提条件 测试的URL:http://ws.webxml.com.cn/WebServices/WeatherWS.asmx 测试接口:getSupportCityString 获取城市的编码:htt ...
- 使用fiddler和jmeter进行简单的接口测试。
初学接口测试,以下内容是记录首次使用fiddler和jmeter进行接口测试的步骤,可能步骤有点繁琐,如果有不对的地方,欢迎大家指正. 准备活动: 1.打开fiddler,打开fiddler以后会自动 ...
- Jmeter微信小程序接口测试
最近公司新项目组开发一款微信小程序电商平台,为了更好保证产品质量,因此提出了需要进行接口测试. 从接口本身来讲,对其测试与其他项目应该是一样的.所以不难理解,我们要对小程序的接口测试需要准备的 材料有 ...
随机推荐
- c++类的基本形式(一个简单类的简单sample,命名空间)
有人把类说成是占用固定大小内存块的别名,其定义时不占用空间 #include<iostream> #include<string> using namespace std; c ...
- 1、课程简介-Spring 注解驱动开发
1.课程简介-Spring 注解驱动开发
- 使用Django 测试客户端一起测试视图,模板和URL
Django 测试客户端 self.client.get(url) 测试客户端是Django中TestCase类的一个属性名. 至此已经在网站中可以创建一个清单了. 那么,现在是可以在unit te ...
- keydown([[data],fn]) 当键盘或按钮被按下时,发生 keydown 事件。
keydown([[data],fn]) 概述 当键盘或按钮被按下时,发生 keydown 事件. 注释:如果在文档元素上进行设置,则无论元素是否获得焦点,该事件都会发生.直线电机滑台 参数 fnFu ...
- learning express step(七)
Route handlers enable you to define multiple routes for a path. The example below defines two routes ...
- 数据结构实验之二叉树八:(中序后序)求二叉树的深度(SDUT 2804)
#include <stdio.h> #include <stdlib.h> #include <string.h> struct node { char data ...
- vue中父组件如何监听子组件值的变化
vue中我们会遇到很多父子组件通信的需求, 下面简单列一下,父子组件通信的几种情况 1:父组件向子组件传值:使用prop向子组件传值: 2:子组件实时监听父组件传来的值的变化:使用watch去监听父组 ...
- [题解] [SDOI2017] 序列计数
题面 题解 和 SDOI2015 序列统计 比较像 这个无非就是把乘改成了加, NTT 改成了 MTT 再加上了一个小小的容斥 : 拿所有方案减去不合法方案即可 Code #include <a ...
- Mysql中行转列和列转行
一.行转列 即将原本同一列下多行的不同内容作为多个字段,输出对应内容. 建表语句 DROP TABLE IF EXISTS tb_score; CREATE TABLE tb_score( id ...
- 虚拟Linux系统使用Windows系统oracle数据库
前提:本地oracle数据库能正常使用. 数据库:oracle 11g 虚拟机:VMware_workstation_full_12.5.2 本机系统:Windows 7 旗舰版 虚拟机系统:open ...