QA词典 – 接口测试

Posted 晓春测略

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QA词典 – 接口测试相关的知识,希望对你有一定的参考价值。

接口测试

API Testing


维基百科的说明


API testing is a type of software testing that involves testing application programming interfaces (APIs) directly and as part of integration testing to determine if they meet expectations for functionality, reliability,performance, and security. 


Since APIs lack a GUI, API testing is performed at the message layer. API testing is now considered critical for automating testing because APIs now serve as the primary interface to application logicand because GUI tests are difficult to maintain with the short release cyclesand frequent changes commonly used with Agile software development and DevOps.

 

百度百科的释义

QA词典 – 接口测试

 

接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。

 

QA词典 – 接口测试

测略君的解读

QA词典 – 接口测试

【备注:本解读仅代表个人观点,当中不免有个人理解的局限甚至偏见,望大家海涵】

 

接口测试(API Testing, Interface Testing)最近越来越流行,不少互联网公司的面试中会热衷于这方面的内容。其实,它倒不是特别新鲜的概念,只是以前不以一个强概念的面目出现。关于其定义也不是特别一致,百度上英文译为"Interface Testing",而维基上只有API Testing的词条。


QA词典 – 接口测试

有人认为接口测试是一种功能测试,不能说错,毕竟大部分时候验证的是接口的业务功能。但是这种说法也不全面,毕竟性能和安全测试也是很重的一部分。有人觉得接口测试应该是集成测试,这个听起来更加靠谱一些,只是从广义而言,接口测试包含函数-模块-子系统-外部系统多个层次的测试,也不算准确。我们更愿意把它当成是一个系统技术实现角度横切面,类似于UI测试,前端测试,后端测试。这样的话与单元测试和集成测试都有交集,也需要包括功能,性能,安全及其他系统测试,当然会需要白盒,黑盒以及灰盒等手段。

QA词典 – 接口测试

关于接口测试,给人的第一感觉就是似乎是挺有技术含量的。毕竟没有直观的UI,总是带有神秘感。如果真的动手做过了,也就发现并没有特别难的地方。最核心还是明白数据格式和传输方式,一般比较专业的就称为"协议"。协议分成两类,业务协议(例如金融中常用的SWIFT,或者借助于XML的格式,中国外汇中用的IMIX,自定义的各种数据报文格式等),还有就是传输协议(诸如FTP,HTTP,MQ,TCP/IP等)。业务的内容就是测试用例设计的主要关注点,而传输部分要么自己写代码实现(或用挡板工具模拟),要么就是借助工具,例如SOAPUI,JMETER等。不过相比UI类的测试,一旦接触了接口测试,则大概率会喜欢上接口测试的方式。因为以执行效率而言,接口测试的优势非常明显。一个文件扔进去,几十个用例就跑完成了,这样的感觉真是不错。测略君的团队在2005年的时候也在同时做UI和接口的测试,初期分配的时候,领到接口任务的小伙伴是有点心里障碍,及至后面玩熟悉了,反而大家都希望做一下接口的部分。


QA词典 – 接口测试

 

关于接口测试的另一个点,就是它对压力和安全比较敏感。细心的朋友们也许发现了,作为经典性能测试工具的JMETER也是广泛使用的接口测试工具。这个不是巧合,而是因为两者技术本就相通。绝大部分接口都是有数据量要求的,那么如果顶不住压力,无疑是失败的。同样,很多渗透测试(或者黑客攻击)就是利用开放或者包含漏洞的接口,去入侵相关的业务系统的。当中,我们有碰到一些系统的对外接口是没有任何认证要求的,这个相当于对外部"黑客"提供了一个比自己的合法用户更便捷获取信息的通道,因为通过接口获取的数据是批量的。





 

 

 


以上是关于QA词典 – 接口测试的主要内容,如果未能解决你的问题,请参考以下文章

1w+员工的互联网公司接口测试实践

接口测试填坑的那些事儿

接口文档管理工具-PostmanSwaggerRAPDOClever

接口测试之线上测试

接口测试平台的正确打开姿势

自动化接口测试