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微信小程序接口测试
最近公司新项目组开发一款微信小程序电商平台,为了更好保证产品质量,因此提出了需要进行接口测试. 从接口本身来讲,对其测试与其他项目应该是一样的.所以不难理解,我们要对小程序的接口测试需要准备的 材料有 ...
随机推荐
- JAVA遇见HTML——JSP篇(JSP状态管理)
案例:Cookie在登录中的应用 URL编码与解码的工具类解决中文乱码的问题,这个工具类在java.net.*包里 编码:URLEncoder.encode(String s,String enc)/ ...
- CSRF防御
一.通过 referer.token 或者 验证码 来检测用户提交. <meta name="referrer" content="never"> ...
- jpa 如果返回java对象,会自动更新对象值(坑!!)
//上一段示例代码List<Member> memberList = memberDao.findByLoginNameIn(names);for (Member m : memberLi ...
- ubuntu 16.04 TLS 安装VNC
安装 #autocuftsel 用于vnc两段的复制粘贴 sudo apt-get install autocutsel 安装 vncserversudo apt-get install --no-i ...
- iar8.32版本关于cmsis的说明
平台是cubemx5.3 keil5.26 带freertos,使用iar8.32,在上图中的use cmsis 打勾与否都能编译通过.
- python协程初步---一个迭代器的实现
一般认为迭代器就是实现了两个方法__iter__和__next__ 先创建这样一个类 from collections import Iterable from collections import ...
- mysql 数据库练习题
前面学习了MySQL的语句的基本用法,这里就开始做一些MySQL练习,这套题目一共45题,属于比较简单的,初学先试着做这个. 参考链接:https://www.cnblogs.com/SJP666/p ...
- 001_linux驱动之_驱动的加载和卸载
(一)驱动的安装: 1. 可以将驱动程序静态编译进内内核中 2. 也可以将它作为模块在使用的时候再加载 注:在配置内核时候,如果某个配置被设置为m,就表示它将会被编译成模块 (二)加载和卸载驱动使 ...
- 帝国CMS 7.2-插件包整合
版权所有 2009-2019 荆门泽优软件有限公司 保留所有权利 官方网站:http://www.ncmem.com/index.aspx 产品首页:http://www.ncmem.com/weba ...
- 【概率论】3-5:边缘分布(Marginal Distribution)
title: [概率论]3-5:边缘分布(Marginal Distribution) categories: Mathematic Probability keywords: Marginal p. ...