一、多想想为什么吧
平时工作中,你是不是经常遇到这种情况呢?领导说,xxx,你准备做下接口测试吧,接口测试报告记得给我一份。很多人听到之后,就屁颠屁颠去做接口测试。有时我会想,他们真的知道:为什么要做接口测试么?坦白说,其实一开始我也不清楚为什么要做接口测试。。。
二、什么是接口测试
接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是检查数据的交换,传递以及系统间的相互依赖关系等。
一般来说,测试接口是指测试接口的功能、性能和稳定性测试,当然还有大佬级别的安全性测试。另外,工作中接口测试基本是针对HTTP或者HTTPS协议的接口测试。
一个project中,我们可能会遇到很多接口,少的有几十个,多的有几百上千个接口。做接口测试时,我们没有软件界面,没有具体的测试场景,只有一个接口描述文档。接口,是一个抽象的东西,我们需要利用软件测试理论和方法以及接口文档,从而发现接口的功能和安全性的缺陷。
接口包括内部接口和外部接口。
- 内部接口:开发人员自己开发的接口
- 外部接口:例如网站调用微信支付和支付宝支付接口;一些模块与模块之间的接口
三、为什么要做接口测试
1.现在很多系统前后端架构是分离的,因为不同端(前端,后端)的工作进度不一样,所以我们要针对最开始出来的接口,以及需要调用其他公司的(银行,支付宝,微信,qq等)的一些接口进行接口测试及验证数据。基于安全的考虑,只依赖前端进行限制已经完全不能满足系统的安全要求,毕竟绕过前端验证太easy了。。。所以,我们需要后端验证,即从接口层面进行验证。PS:涉及到用户的隐私消息,如身份证,银行卡等,要从接口层面上验证。
2.现在推崇测试前移,也叫测试左移,希望测试能更早介入测试,刚好接口测试就是一种及早介入的方式。传统测试,需要前后端都done后才能进行测试,才能进行自动化编码编写。但接口测试不同,只需要前后端定义好接口,接口自动化就可以介入编写接口自动化测试代码,而接口手工测试只需要后端代码完成后,就可以介入测试后端逻辑,不用默默等待前端工作完成,极大提高了测试的工作效率。
参考链接:https://www.cnblogs.com/du-hong/p/10494149.html
原文地址:https://www.cnblogs.com/huainanhai/p/11966277.html