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包。