Jmeter用的最多的就是做接口和性能测试了,着实比较好用,今天给大家分享下如何利用Jmeter做接口测试。

在做接口测试之前,我们起码需要了解:

1、接口涉及的业务

2、接口的基本信息:访问地址、传值方式(Post 或 Get)、协议类型、域名或IP、端口、参数

3、接口参数是否加密或者有其他处理加工

很多时候,可能因为各种原因,测试人员是得到不到全面完整的接口文档的,那么这个时候,我需要主动的与开发人员索要或者自己获取(可以采用Fiddler 来抓包)

下面以一个简单的项目为列:

业务介绍:验证客户登录后获取到相应订单数据。

涉及接口:登录接口、获取订单数据接口(其中参数采用了MD5加密)

直接贴上我的列子,一一给大家介绍:

Jmeter综合运用 之 接口测试-LMLPHP

 一、HTTP信息头管理器

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

Jmeter综合运用 之 接口测试-LMLPHP

Jmeter综合运用 之 接口测试-LMLPHP

二、公共配置和环境判断

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

Jmeter综合运用 之 接口测试-LMLPHP

Jmeter综合运用 之 接口测试-LMLPHP

 三、线程组

线程组里包括 :

CSV Data Set Config :用来存放多个不同的客户登录信息

计数器 :主要是用来方便查看执行了多少个客户(可以忽略),

事务控制器:因为登录和获取订单 对客户操作来说是一个步骤,因此放到事务控制器中,其下包括 登录、获取订单 两个样例

两个样例:登录、获取订单,且登录成功后,才执行获取订单 样例

结果观察树:观察结果

1、CSV Data Set Config 

Jmeter综合运用 之 接口测试-LMLPHP

Jmeter综合运用 之 接口测试-LMLPHP

 2、计数器

Jmeter综合运用 之 接口测试-LMLPHP

 3、事务控制器

Jmeter综合运用 之 接口测试-LMLPHP

Jmeter综合运用 之 接口测试-LMLPHP

 4、事务控制器下的样例

样例下面包括:前置处理器、后置处理器、断言

Jmeter综合运用 之 接口测试-LMLPHP

 4.1、前置处理器

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

Jmeter综合运用 之 接口测试-LMLPHP

 4.2、后置处理器

这里主要是获取token,当然也可以用正则表达式 都可以

Jmeter综合运用 之 接口测试-LMLPHP

 4.3、断言

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

Jmeter综合运用 之 接口测试-LMLPHP

 4.4、判断是否正确

登录成功了,才能获取订单数据

Jmeter综合运用 之 接口测试-LMLPHP

 4.5、获取用户订单数据

同登录样例

5、查看结果树

Jmeter综合运用 之 接口测试-LMLPHP

到这里,脚本就完了,csv文件中可以配置很多客户,在线程组的设置中,设置循环次数,就会循环读取CSV文件中的信息,每次读一行。

大家可以根据自身的需求来做,但是基本的接口验证就是这样的。MD5加密也可以使用java的jar包。

05-28 10:01