接口自动化测试工程化——了解接口测试
Posted 测试萌萌
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了接口自动化测试工程化——了解接口测试相关的知识,希望对你有一定的参考价值。
什么是接口测试
接口测试也是一种功能测试
我理解的接口测试,其实也是一种功能测试,只是平时大家说的功能测试更多代指 UI 层面的功能测试,而接口测试更偏向于服务端层面的功能测试。
接口测试的目的
测试左移,尽早介入测试,尽早发现系统更深层的问题,降低问题修复成本。
接口测试测什么
接口测试是为了验证服务端接口内部逻辑的正确性,而这个正确性也分两方面:
-
接口能否正确处理正常数据,并返回正确的响应,响应可能包括数据结构、数据内容等;
-
接口能否正确处理异常数据,并返回特定响应,主要是验证接口的健壮性。
总结一下
-
接口正确接受合法请求数据
-
接口正确拒绝非法请求数据
这都属于正向测试。
接口测试的场景
我认为接口测试主要分两种测试场景:
-
单接口健壮性测试
-
多接口场景测试
单接口测试
-
针对单个接口做健壮性测试,会覆盖正常场景以及异常场景,保证接口的正确性和健壮性;
-
单接口测试不关注用户层面的业务逻辑,只关注接口的内部逻辑,所以它更接近于单元测试。
总结:保证接口能正确处理各种正常、异常场景。
多接口场景测试
-
为了验证用户主流程、主功能的业务逻辑的正确性,不需要太多异常场景的验证;
-
多接口场景测试会更加关注用户层面的业务逻辑,所以它更接近于 UI 层面的功能测试;
-
比如需要验证一个电商付费流程,可能就包含以下接口:获取商品列表-获取商品细则-加入购物车-提交订单-订单付费,只需要关注正常场景即可。
总结:保证多个接口在正常数据流下能跑通。
单接口测试设计测试用例
什么是接口自动化测试
首先,要知道的是,只说接口测试,也是一种手工功能测试,只是测接口而已,所以接口自动化测试其实就是将接口测试从手工变成自动化。
常见的接口自动化测试方式
这一知识库主要讲解的是工具实现接口自动化测试。
什么是工程化
这其实也是最近才接触的东西,感觉有点高端啊!
谷歌搜了下什么是工程化,结果出来的都是前端工程化,只能看完,然后按照自己的理解来描述一下了,只代表自己的看法:工程化其实是一种思想。
为什么要工程化
-
提高效率,包括但不限于开发效率、测试效率、维护效率、管理效率;
-
从流程混乱、耦合严重、依赖人工到规范化、模块化、自动化。
规范化
提高整个项目的可维护性:
-
版本管理规范:使用 git 来管理代码仓库;
-
开发流程规范:团队统一研测流程,比如:code review 流程、提测流程、复盘流程等;
-
编写代码规范:团队统一编写规范,比如:项目结构、项目代码、自动化测试脚本等。
模块化
-
提高整个项目的可读性;
-
将一些相关逻辑的内容放在同一个文件夹中。
自动化
能自动化完成的事情绝不让人来做,是工程化的核心:
-
自动初始化:比如一键安装本地环境,安装依赖项等;
-
自动执行测试:比如一键测试、一键生成测试报告等;
-
自动部署:比如使用 Jenkins,流水线的形式管理项目运行的声明周期。
最后: 下方这份完整的软件测试视频学习教程已经整理上传完成,朋友们如果需要可以自行免费领取【保证100%免费】
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!
以上是关于接口自动化测试工程化——了解接口测试的主要内容,如果未能解决你的问题,请参考以下文章
APP接口自动化测试JAVA+TestNG之HTTP接口测试实例