接口自动化测试的概述及流程梳理~

接下来开始学习接口自动化测试。

因为之前从来没接触过,所以先了解一些基础知识。

1.接口测试的概述

2.接口自动化测试流程。

接口测试概述

接口,又叫API(Application Programming Interface,应用程序编程接口),用于系统与系统或代码模块与模块之间的交互和数据传输。

代码内部模块与模块之间的接口,叫程序接口。

系统与系统之间,通过网络数据的传递进行交互,叫做协议接口。

接口测试,即对接口之间交互和数据传输的稳定性、正确性等方面进行测试。一般指协议接口。

为什么要做(自动化)接口测试?

1、由于现在各个系统的复杂度不断上升,导致传统的测试方法成本上升且测试效率大幅下降,而接口测试相对于UI测试更加稳定,且相对容易实现自动化持续集成,可以减少人工回归测试的时间成本,缩短测试周期。

2、接口测试可以更早的介入到项目开发中,一般只要接口定义好了,就可以写代码了。而功能测试必须要等系统提供可测的界面后才能进行。

3、相对于UI测试(某些测试环境搞起来贼麻烦)来说,接口测试可以更简单全面地覆盖到底层的代码逻辑,从而发现一些隐藏bug。

4、从安全层面来说,现在大部分系统前后端框架是分离的,只依赖前端进行限制已经不能满足系统的安全要求,需要后端同步进行控制,所以测试也需要从接口层面进行验证。

5.越来越多的团队开始接收DevOps所倡导的高度协同,研发、测试、运维及交付一体化的思维,对测试效能提出了更高的要求。

接口测试原理

模拟客户端向服务器发送请求,服务器接收后进行处理并向客户端返回应答,客户端再接收应答的过程。

测试范围

业务功能(包括正常、异常场景是否实现)

业务规则(覆盖度是否全面)

参数验证(边界、业务规则是否达到要求)

异常场景(重复提交、并发提交、事务中断、多机环境、大数据量测试)

性能测试(响应时间、吞吐量、并发数、资源要求)

安全测试(权限验证、SQL注入等)

接口自动化测试流程

1、熟悉业务和需求,评估可行性和测试范围

并不是所有的业务都适合自动化,需要评估可行性、性价比、可持续性等等。比如一个项目,只做1.0版本,做完就结束了,还做什么自动化?

2、确定方案。

具体业务具体分析,与团队完成最适合的工具选型。

常用的方案有:

①现成的开源工具:postman/jmeter等

②一些第三方平台(收费的)

③自己公司开发自动化测试平台(少,且平台质量很难把控)

④代码编辑自动化框架,pytest等

3、设计自动化测试执行框架搭建。

什么是框架?就是让接口测试脚本运行的一整套环境,包括脚本语言、工具、测试用例、执行策略、测试报告、日志收集、数据分析、报告可视化等。

4、执行测试

通过我们设计的框架执行测试用例,在过程中需要持续关注整个框架可优化的点。主要流程为:发送请求--获取结果--解析结果

5、输出测试报告

同样通过测试框架输出测试报告,报告应该注意要结果明确、结构清晰

6、持续集成

对接口测试而言,持续集成是自动化的关键。在初步实现接口自动化测试之后,还需要持续的加强自动化程度。

①流程方面:在过程中不断加强接口异常场景覆盖度,并逐步向系统测试、冒烟测试方面延伸,最终达到全流程自动化

②结果展示:更加丰富的结果展示、数据统计、质量分析等。

③问题定位:通过报错信息、日志、截图等手段,降低开发定位问题的难度。

④结果校验:不断提高结果的自动化校验能力,如数据库信息校验。

⑤拓展:向性能测试/安全测试等方向拓展,通过自动化手段监控接口性能指标是否正常。

环境准备

开始系统学习前需要准备一些环境。

python环境

安装pytest、requests库

了解一款抓包工具,例如fiddler,charles

postman/jmeter安装

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

文档获取方式:

加入我的软件测试交流群:632880530免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)

这份文档,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!
以上均可以分享,只需要你搜索vx公众号:程序员雨果,即可免费领取

【软件测试行业现状】2023年了你还敢学软件测试?未来已寄..测试人该何去何从?【自动化测试、测试开发、性能测试】

相关推荐
美团测试工程师6 小时前
九大高效的前端测试工具与框架
软件测试·测试工具·jmeter
测试者家园12 小时前
ChatGPT生成接口文档的方法与实践
软件测试·chatgpt·测试用例·接口测试·接口文档·ai赋能·用chatgpt做软件测试
Heaven64514 小时前
6.8 Newman自动化运行Postman测试集
软件测试·自动化·接口测试·postman·newman
测试老哥19 小时前
Python自动化测试图片比对算法
自动化测试·软件测试·python·测试工具·程序人生·职场和发展·测试用例
测试者家园1 天前
ChatGPT接口测试用例生成的流程
软件测试·chatgpt·测试用例·接口测试·测试图书·质量效能·用chatgpt做测试
互联网杂货铺1 天前
几个常见的Jmeter压测问题
自动化测试·软件测试·测试工具·jmeter·职场和发展·测试用例·压力测试
测试者家园2 天前
ChatGPT与接口测试工具的协作
软件测试·测试工具·chatgpt·接口测试·ai赋能·用chatgpt做软件测试·测试图书
测试19982 天前
Chrome+Postman做接口测试
自动化测试·软件测试·chrome·测试工具·职场和发展·测试用例·postman
爱学测试的李木子2 天前
性能】JDK和Jmeter的安装与配置
java·开发语言·软件测试·测试工具·jmeter
字节程序员2 天前
Jmeter分布式测试的注意事项和常见问题
软件测试·分布式·jmeter