什么是接口
什么是接口(百度)?
接口(硬件类接口)是指同一计算机不同功能层之间的通信规则称为接口。
接口(软件类接口)是指对协定进行定义的引用类型。其他类型实现接口,以保证它们支持某些操作。接口指定必须由类提供的成员或实现它的其他接口。与类相似,接口可以包含方法、属性、索引器和事件作为成员。
什么是接口(自我理解)?
接口是系统内部各模块间或系统内部与外部进行数据连接的交互点,通过一定的协议类型(规则)进行数据交互。
## 连接前后端以及移动端,通俗来说就是前端和后端之间的桥梁,
## 比如网站需要去调用银行丶微信及支付宝的接口来完成业务需求
为什么要做接口测试
不同端的工作进度肯定是不一致的,那么就需要对最开始开发出来的接口进行测试;
对于项目来说缩短项目周期,提高开发效率以及提高系统的健壮性
接口类型有哪些
内部接口
内部接口又分为上层服务与下层服务以及同级服务
系统内部用于不同模块之间的交互
外部接口
提供给外部的口子,可以使用系统内部的某些功能
接口通常分为:
http协议(http/https):api接口是走http协议,通过路径来区分调用的方法,请求报文都是key-
value形式的,返回报文一般都是json串
webservice协议(soup/rmi/rpc):webService接口是走soap协议通过http传输,请求报文和返回
报文都是xml格式的
接口工作原理
接口测试简单理解就是:通过url向服务器传输数据,然后接收相应的返回值。
本质就是数据传输及接收
需求评审——场景设计——用例设计——数据准备——执行
接口测试是什么?为什么要做接口测试
通过URL向服务器或者其他模块等,传输我们想传输的数据,然后看看他们返回的是不是我们预期想要的
接口测试需要注意哪些测试点
业务测试点
边界值分析
参数组合及参数校验
异常场景测试
性能测试
响应时间
吞吐量
并发
服务器资源使用
cpu/内存
安全测试
接口测试用例设计
功能用例测试:测试功能是否正常丶测试功能是否按照接口文档实现
逻辑用例设计:是否存在依赖业务,例如有些操作是需要用户登录成功的状态下才能进行的操作
异常测试用例设计:参数异常以及数据异常;参数异常包括关键字参数丶参数为空丶多参数丶少参数丶错误参数,数
据异常包括关键字数据丶数据为空丶长度不一致丶错误数据
安全测试用例设计:cookie丶header丶唯一识别码
怎么做接口测试及接口测试工具使用
通过工具或代码模拟http请求的发送与接收
工具: postman, jmeter,soupUI, python+requests等
httpwatch
集成于IE和Firefox浏览器中,在其他浏览器中无法使用,查看数据也比较麻烦
wireshark
只要是经过电脑的所有请求都会去抓取,导致数据量比较庞大,看数据也比较麻烦
fiddler
轻量级抓包工具,功能比较全,只会记录http请求不会像wireshark工具记录tcp和udp等请求
它除了可以抓包还可以向接口发送各种请求
loadrunner
soapui
接口和自动化测试工具,功能也比较强大
jmeter
接口
性能
postman
接口测试工具
接口自动化也可以实现,如Python+unittest+requests
接口测试需要掌握哪些知识
系统间业务交互逻辑:通过需求文档、流程图、思维导图、沟通等渠道获取
接口测试工具
数据库及基础操作命令:增删改查
协议类型及基础知识
如何获取接口信息
接口文档
抓包: fidder, Charles
请求协议、状态码
http请求协议基础
http状态码:
200,300,400,500