轻量级接口测试工具Jmeter使用

前言

无论是Web互联网还是移动互联网公司,后台都有大量的接口提供的服务,有很多的业务上的逻辑是放在后台来实现,前端针对后台接口返回的数据,选择性的进行正确的展示。同样越来越多的公司也越来越关注接口测试,有的自己搭建了接口测试平台(Django、flask等等好多)或者针对很多开源库,自己整了一套适合自己的接口测试框架(httpclient、requests等),但在有些测试团队,通常自动化方面开展会遇到各种各样的问题:

  • 版本迭代过快。由于互联网版本节奏非常快,有的公司甚至一个月迭代一个大版本(比如我司,应用一个月更新一次,其中还有各种小版本、小补丁上线)。团队成员精力有限,公司出于成本的考虑,可能不会留给测试人员太多搭建接口测试平台或者接口测试用例框架的时间
  • 自身能力有限吧,对于大型的项目,后台逻辑的理解可能会发挥很长时间,对于构建自动化用例来说有一定的技术门槛,不是所有的测试人员都能达到这个水准
  • 成本问题,之前我司招了一个专门搞自动化的,半年后还是友好分手了,投入和产出不成正比。需要有专门的人员长时间花精力和时间去维护,可能也会超出公司的预期

Jemter用于接口的优点

最初了解Jemter,它是一款用于性能测试的一款工具,目前也是主要功能之一,后来才逐渐丰富完善,逐渐不少公司用于接口测试。
主要有如下几个优点:

1.支持多种类型的协议

Jmeter自带支持的接口协议有多种,可以省去接口协议的数据收发方面的开发


类型.png

2.对HTTP协议支持的比较全面

HTTP目前还是互联网公司常用的协议,Jmeter对HTTP的支持比较全面,对于协议方法、请求参数和值、代理等方面都提供了支持。


http请求.png

同时还提供了cookie管理器、cache管理器、请求默认值等辅助功能


其余.png

3.断言方式较全面

如果仅是简单的请求、相应,不对相应内容进行断言,测试结果检查起来是很困难的。


断言.png

Jmeter提供了相应断言,可以看出还是较全面的,支持相应代码、响应头、响应内容等,同时支持包括、等于、否等多种判断规则

4.可以连接数据库检查数据

在实际接口测试中,有时候需要连接数据库查询数据进行校验,Jmeter中可以通过JDBC Request这个sampler实现,如下:


JDBC.png

5.工具非常稳定

作为一款开源工具,Jmeter的用户可以达到千万级,其稳定性已经得到了比较充分的验证。而自动化是一个比较频繁执行的行为,所以Jmeter的稳定正好满足这一点

Jmeter用于接口测试实践

仅仅是简单使用吧,介绍的比较浅,用例分层、报告输出、邮件发送、持续集成等暂都不做介绍。
整体框架如下:


Jmeter.png

HTTP请求默认值,主要方便下面,不用每次请求都输入相同的url
HTTPcookie管理器,主要用于管理cookie
下面是一个HTTP接口请求,每个接口有一个断言
查看结果树,显示最终的结果

以上只是一个简单的框架,如果用到实战中,需要进一步的进行优化,仅仅做入门学习参考
备注:这篇文章的产生,主要是读了《移动APP测试实战》一书,部分内容借鉴了里面的内容,有兴趣的可以买来读一读

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 在使用Jmeter进行接口的性能测试时,由于Jmeter 是JAVA应用,对于CPU和内存的消耗比较大,所以,当需...
    燕京博士阅读 9,651评论 0 16
  • 1 Jmeter安装配置 使用Jmeter前首先要安装JDK,配置JDK环境变量。Jmeter不需要安装,下载后...
    茶小汐阅读 8,125评论 0 8
  • 主要文体来自 CDNS:https://www.cnblogs.com/ceshisanren/p/5639895...
    Amano阅读 13,793评论 3 27
  • JMeter有两种类型的控制器:取样器和逻辑控制器。 取样器指示JMeter向一个服务器发送请求。例如,如果你想让...
    七月尾巴_葵花阅读 5,644评论 0 3
  • 我不在想关于诗的一切故事, 我是孤独,我是恶魔 是刀锋下鲜美的花朵、佳肴 我是文字的奴隶,是生母和韵母的爱徒 我是...
    肖先生肖军阅读 1,724评论 1 2

友情链接更多精彩内容