【接口自动化】1.做接口自动化前你需要准备什么?

简介: 【接口自动化】1.做接口自动化前你需要准备什么?

自动化测试,最近些年可谓是大火。招聘上的要求也好,培训班的广告也罢,比比皆是,足以说明它在业内的火爆程度。


虽然说会写自动化测试也不能说明你牛批,但是你不会的话,那么很抱歉,你的上升通道就会变得更窄。


一、为什么要去做自动化测试


其实自动化测试之所以受到大家的追捧,必然也是有它的道理。说白了,我觉得根本的因素是在于提效。


当然了,提效这个是最终理想,但是有些公司的自动化项目落地的并不太好,反而成为了某种“累赘”。


在不少的测试群里待过,看到过很多人吐槽自己的领导或者公司xx,突然某天就宣布要开始搞自动化了,然后安排下去。


其实很多时候,他们自己并没有搞清楚,项目适不适合做自动化、做怎么的自动化。说白了,就是为了做自动化而做,

并不清楚,真正想要的是什么。


所以,在做自动化之前,建议搞搞清楚你们要做的自动化项目应该是什么样子的,解决了什么痛点,能提高多少的效率等等。


否则,辛辛苦苦做下来的自动化,很容易到后面就变成了废品。


二、自动化的类型


大家通常会去选择做自动化的类型一般有2种:一种是UI自动化、一种是接口自动化。


那UI自动化中,又可以有web系统的自动化、APP的自动化等等。


笔者本人曾经开发维护过一套web自动化的服务,说实话,投入回报率不高,所以后来也就逐步放弃了。


回想起来,这也算是领导没弄清目的就盲目开展的典型案例了,不过这段开发经历对我来说还是很宝贵的。


到后来重点就转移到了接口自动化了,为什么呢?


首先声明,这里讲的接口是指协议接口了,比如http协议的接口,并不是程序接口,比如java里的interface。


那么接口层相比于UI层,最大的优点是更接近底层逻辑,可以让测试更早的介入。于是更早的发现bug,修复的成本也就越低了。


另外,接口测试也可以更容易发现UI测试中不容易发现的问题。


比如说,一个接口没有对非法传参进行处理,虽然UI在输入框进行了一些不合规的类型输入校验,但是只要抓个包修改下参数请求过来,就会立即暴露出问题。


三、搭建一个接口自动化框架需要的技能


  • 编程语言:既然做了这行,编程是跑不掉的。java、python 哪个熟悉用哪个吧,我个人偏向于脚本用python。
  • 单元测试框架:不同语言有不同的测试框架,python有unittest、pytest等,java有testng、junit等。我个人偏向python的pytest。
  • 搜索解决问题:其实有了前面2个点是基石,剩下的就是你遇到什么问题或者需求,知道如何去搜索解决实现的能力了。比如能找到合适的
    第三方库,来增加自己的框架,拿pytest来说,可以用requests库来发送请求,用jmespath库来提取复杂的接口响应,以及用allure框架来
    输出一个漂亮的报告等。


搞清楚了这些,基本上就可以开始做起来了。


一开始不用过度的考虑自己的框架的终极形态是什么样子的,因为我觉得没有最好的框架,只有最适合的框架。在你实现的过程中,会遇到不同的问题,

然后你不断迭代优化你的框架去解决这些问题,于是乎框架会一点点的变成大家心中的样子。


后面会分享一些个人搭建的框架,以及过程中需要注意到的一些细节等。

相关文章
|
3月前
|
测试技术 索引 Python
Python接口自动化测试框架(练习篇)-- 数据类型及控制流程(一)
本文提供了Python接口自动化测试中的编程练习,包括计算器、猜数字、猜拳和九九乘法表等经典问题,涵盖了数据类型、运算、循环、条件控制等基础知识的综合应用。
45 1
|
2月前
|
JSON 移动开发 监控
快速上手|HTTP 接口功能自动化测试
HTTP接口功能测试对于确保Web应用和H5应用的数据正确性至关重要。这类测试主要针对后台HTTP接口,通过构造不同参数输入值并获取JSON格式的输出结果来进行验证。HTTP协议基于TCP连接,包括请求与响应模式。请求由请求行、消息报头和请求正文组成,响应则包含状态行、消息报头及响应正文。常用的请求方法有GET、POST等,而响应状态码如2xx代表成功。测试过程使用Python语言和pycurl模块调用接口,并通过断言机制比对实际与预期结果,确保功能正确性。
242 3
快速上手|HTTP 接口功能自动化测试
|
3月前
|
存储 测试技术 数据库
Python接口自动化测试框架(练习篇)-- 函数编程(一)
本文通过实际的编程练习,讲解了面向过程编程的概念和应用,包括如何定义函数、处理文件读写以及实现用户注册功能,最终将这些过程封装成函数,体现了Python作为脚本语言的面向过程编程特性。
27 2
|
3月前
|
前端开发 测试技术 UED
【测试效率对比】深入分析:为何UI自动化测试的投资回报率通常低于接口自动化测试?
这篇文章深入分析了UI自动化测试与接口自动化测试的投资回报率(ROI)问题,指出UI自动化测试在某些情况下的ROI并不低,反驳了没有实施过UI自动化就轻易下结论的观点,并强调了实践的重要性和自动化测试在项目迭代中的作用。
80 1
|
3月前
|
测试技术 Python
Python接口自动化测试框架(练习篇)-- 函数编程(二)
本文通过具体的编程练习,深入探讨了Python中的函数编程,包括如何定义函数、使用参数和返回值,以及函数式编程的技巧和应用,如使用lambda表达式和递归函数解决实际问题。
26 1
|
3月前
|
测试技术 索引 Python
Python接口自动化测试框架:回顾Python3基础语法知识总览
本文是Python 3基础语法知识的全面总结,涵盖了标识符、数据类型、运算符、控制流程、函数、模块和文件操作、异常处理以及面向对象编程的各个方面,旨在为编写Python接口自动化测试框架提供必要的语法知识支持。
34 1
|
3月前
|
存储 测试技术 数据格式
Python接口自动化测试框架(练习篇)-- 数据类型及控制流程(二)
本文通过数据类型转换和文件读取的练习,复习了Python中的数据类型、循环、条件判断、内置函数等基础知识,并演示了如何将字符串数据转换为字典列表,以及如何从文本文件中读取和转换数据。
35 1
|
3月前
|
IDE 测试技术 开发工具
Python接口自动化测试框架(基础篇)-- 讨厌的异常处理
本文详细讨论了Python中的异常处理机制,包括异常捕获、异常抛出、自定义异常、环境清理,以及使用上下文管理器确保资源正确释放,最后还提到了Python的标准异常类。
36 1
|
3月前
|
Web App开发 JSON 测试技术
精通Postman接口测试:关联技术与自动化实践指南
这篇文章详细介绍了如何使用Postman进行接口测试,包括关联技术、自动化实践,以及如何通过环境变量和全局变量解决接口之间的关联性问题。
103 0
精通Postman接口测试:关联技术与自动化实践指南
|
3月前
|
JSON jenkins 测试技术
Python接口自动化测试框架(工具篇)-- 接口测试工具HTTPRUNNER
本文介绍了Python接口自动化测试框架HTTPRunner,包括其安装、使用方法,并通过实际操作演示了如何利用HTTPRunner进行接口测试,同时还探讨了HTTPRunner作为接口自动化测试解决方案的可能性和实用性。
67 0