自动化测试,算是近几年比较火热的一个话题,当然,更是软件测试未来的一个发展趋势。未来,功能测试等非核心的测试工作,都将被外包。
想要在软件测试这个行业继续前行,就必须拥有核心竞争力,掌握自动化测试技术,是必不可少的一个技能。
目前国内的互联网行业,大环境来说,还处在一个快速发展,需要流程化标准化的时期,如何跟上不断变幻发展的节奏,除了不断了解接触新的东西,还需要不断学习,提升自身,以内在的驱动力,去紧跟时代浪潮。
1、接口测试的必要性和意义
接口测试实施在多系统的平台架构下,有着极为高效的成本收益比(当然,单元测试收益更高,但实施单元测试的成本投入更大,技术要求更高,所以应该选择更适合自身的才是最好的方案)。
接口测试天生为高复杂性的平台带来高效的缺陷检测和质量监督能力,平台复杂,系统越庞大,接口测试的效果越明显。
总的来说,接口测试是保证高复杂性系统质量的内在要求和低成本的经济利益驱动作用下的最佳方案,主要体现在如下三个方面:
节省了测试成本:
根据数据模型推算,底层的一个程序BUG可能引发上层的8个左右BUG,而且底层的BUG更容易引起全网的死机;
接口测试能够提供系统复杂度上升情况下的低成本高效率的解决方案。
接口测试不同于单元测试:
接口测试是站在用户的角度对系统接口进行全面高效持续的检测。
效益更高:
将接口测试实现为自动化和持续集成,当系统复杂度和体积越大,接口测试的成本就越低,相对应的,效益产出就越高。
2、做接口测试需要哪些技能
做接口测试,需要的技能,基本就是以下几点:
业务流:了解系统及内部各个组件之间的业务逻辑交互;
数据流:了解接口的I/O(input/output:输入输出);
协议:包括http协议,TCP/IP协议族;
工具:工具可以辅助我们更好更高效的完成工作,常用的接口测试工具有:jmeter、loadrunner、soapui、postman等;
数据库知识:无论是从数据库获取知识,还是确认数据落地,抑或接口对数据执行了哪些操作,都需要确认,因此数据库知识(其实就是增删改查)就很有必要;
补充:
接口文档的几个必要点:完整性、一致性、容错性;
3、接口自动化测试
如何开展?
首先,调试单个接口,保证单个接口的正确和通畅(类似于性能测试中的基准测试);
其次,明确数据流,业务流;
最后,将N个接口测试脚本串起来,执行即可;
最重要的一点,别想太多太复杂,先把最基础最简单的做起来,就成功一大半了,至于扩展性的第三方接口、https、定时任务、自动出测试报告、自动发邮件等等功能,这都是不断累计和优化的,
行动起来就行,想太多不如行动起来,让接口自动化测试落地,才是我们首先需要考虑的!
开展之前需要知道了解的
现在的测试对象包含几个页面?
每个页面涉及几个接口?
分别在哪一步调用?
每个接口包含哪些字段?
各个字段对应数据库哪张表?
每个表中各个字段是什么意思?
各个接口对表产生了怎样的操作?
自动化框架
什么是框架?
你可以理解为一个完整的环,也可以理解为让接口测试脚本运行的一整套环境,平台,随便什么都可以;
一般一个自动化测试框架包含以下几点:
数据池:即测试数据的存储管理,一般集成为一个data包,其中包括:
log(日志文件)、report(测试报告文件,一般为xml格式)、case-data(单个接口的测试数据,一般为json格式)、server-data(接口业务串联的数据,可以用excel管理)
脚本管理中心:接口测试脚本的统一管理、存储、调度中心,常用的工具有maven、ant等,或者可以使用编程语言中的单元测试框架提供的功能,选择自己适用的即可;
运行平台:一般是借助工具来运行这些测试脚本,工具可以使用上面提及到的几种(jemter、loadrunner、soapui等),同样,选择合适的很重要;
持续集成工具:最常见的就是Jenkins,它的作用就是监控外部程序的调用执行,定时或者触发调度任务,测试脚本执行等功能;
通信服务:dubbo、spring_boot、thrift等RPC、REST同步调用服务;
测试结果统计管理中心:比如testlink,目的是为了测试结果自动更新上传,更好的统计测试结果,以便后期的优化;
上面说了这么多,实际上它的意义就是:数据与脚本分离,测试结果自动提交通知,提高测试脚本和测试数据的维护便利等等。。。
常用Python接口自动化框架:Python+requests+pytest+yaml+alluer+Jenkins;
下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 |
天道酬勤,不经历风雨,怎能见彩虹;脚踏实地,才能攀登高峰;努力奋斗,方能追逐梦想。让坚持与付出成为你迈向成功的阶梯,迎接未来的辉煌。
只有当我们敢于超越自我,才能触摸到生命的边界;只有在奋斗中,我们才能收获成长与进步。坚持努力,不畏困难,你将创造属于自己的壮丽篇章!
只有坚持不懈的努力,才能创造奇迹,实现理想。无论遭遇多少困难与挑战,勇往直前,勇于拼搏,终将收获属于自己的辉煌与成功!