一、什么是接口
接口主要是指用于外部系统和系统之间,以及内部各个子系统之间的交互点;定义特定的交互点,然后通过这些交互点使用协议进行数据交互。
二、常用接口类型有哪些
1、webService类型的接口:用的soap协议,通过http进行传输;请求报文和返回报文都是XML格式的;我们在进行测试的时候,可以通过工具进行调用,比如jmeter,loadrunner,apipost
2、http类型的接口:它是通过路径来区分调用的方法;请求报文都是key-value形式的,返回的报文一般都是json字符串;http协议有get和post等方法,这也是最常用的两种请求方式;可以使用的工具有Postman,jmeter
三、接口是什么组成的
接口的组成,包括:1、接口的说明 2、调用 url 3、请求的方法 4、请求参数,参数类型,请求参数说明,返回参数的说明
四、为什么做接口测试
1、提早介入测试,绕过前端页面开发这个过程;因为越早开展测试,我们发现bug、解决bug的成本就越低
2、能发现后端没有发现的bug,这叫隐藏的缺陷
3、如果接口稳定了,前端可以随便改
4、可以检查系统的安全性和稳定性
比如:一个登录的接口,产品规定用户名是6-10个字符,数字或下划线都可以;后端没有做判断,只是前端做了校验;黑客可以通过抓包,然后篡改接口,通过SQL注入实现随意登录。如果是下单的业务,会造成公司的损失
五、接口测试到底测什么
(1)、首先我们测接口的可用性:
1、接口功能是否正确;
2、接口的返回值是否正确;
(2)、我们做错误和异常处理的测试:
1、输入异常值(空值、特殊字符、超过约定长度等)验证接口是否能正常处理,且按预期响应;
2、输入错误的参数,验证接口是否能正确地处理,且按预期响应;
3、输入错误的数据格式,比如把json写成form格式,看接口能不能处理
(3).我们要做安全性测试,这里主要指传输数据的安全性:
1、敏感数据、密码能不能加密传输;还有返回的数据是否包含敏感数据,比如用户密码、完整的用户银行账号信息等;
2、然后验证接口是否对传入的数据做安全校验,比如身份ID加token;
3、安全测试最后要验证接口是否能防止恶意请求,比如大量伪造请求接口,导致服务器瘫痪。
(4).接口测试最后要做接口的性能测试:
1、接口的响应时间是否在用户的可接受范围内
2、处理并发的时候,会不会引发系统的故障和程序的异常
3、对接口做压力测试,确定最大的瓶颈点是否能满足当前的业务需求
六、接口测试的流程
1、需求分析
2、Api文档分析与评审
3、测试计划编写
4、用例设计与评审
5、环境搭建(工具)
6、执行用例
7、缺陷管理
8、测试报告