测试工程师都要了解的接口测试基础

接口是为了实现局部数据的共享,同时又考虑到安全性的需要,提供给外部系统调用的一个入口,接口用来交换数据,控制数据的输入与输出。接口包含:

外部接口:供外部系统的调用,是外部系统与系统之间的交互点。
内部接口:系统内部各子系统之间的交互点,供数据在系统内流动。

常见web接口分类:
Web Service(如Restful, soap、rpc协议): Restful Web service, 面向资源,对资源的增删改查(GET,POST,DELETE,PUT),目前最流行的Web API框架,使用HTTP协议。示例:Google地图服务,微信开放平台。 Soap协议的Web service走Soap协议通过http传输,报文请求和返回都是xml格式的,常用测试工具(SOAPUI)。目前使用比较少了。 微服务架构:RPC协议,公司内部基础服务,json-rpc,dubbo框架。

json rpc: http://wiki.geekdream.com/Specification/json-rpc_2.0.html

dubbo: http://dubbo.apache.org/zh-cn/docs/user/quick-start.html

HTTP API接口 调用http协议,用URL路径区分调用地址,报文都是key-value形式的,返回报文一般都是json串,有get和post等方法,get和post通过路径区分调用的方法。 本文涉及与工作相关的知识,只整理和分享Http API接口。 常见的http请求包含:get,post,除次之外, 根据版本的不同,可能提供有put,delete

http请求方式

get: 读数据,向特定的资源发出请求,得到资源。
post:向指定资源提交数据进行处理的请求,用于添加新的内容。
put:向指定资源位置上传其最新的内容,用于修改某个内容。
delete:请求服务器删除请求的URI所标识的资源,用于删除。
trace:回馈服务器收到的请求,用于远程诊断服务器。
connect:用于代理进行传输,如使用ssl
patch:用来对已知资源进行局部更新。
option:它用于获取当前URL所支持的方法。
head:只请求页面的首部 以上几种方法,最常用的是get/post/put/delete,post方法不是幂等(idempotent)的,多次执行,将有多条目被创建。get/put,patch, delete是幂等的, 即相同的操作, 结果不变。

常见http状态码

1XX:通知,收到请求,等待指示
2XX: 成功, 比如200, 代表响应成功。
3XX: 重定向.
4XX: 客户端错误,需要自行改正,比如401代表访问错误,403表示没有权限,404页面不存在。
5XX: 服务端错误, 比如:504服务器连接超时。

接口测试
接口测试是测试系统组件间接口的一种测试,测试的重点是检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。
为什么做接口测试
前后端架构的分离,是接口测试必要性的一个原因。

系统的安全性,稳定性,更需要在后端控制。

轻松集成,容易回归。

接口测试的依据哪里来?
在测试的过程中,接口测试开始前,需要依赖以下文档:

需求说明书:

通过需求说明书,设计测试用例。

技术方案文档:

通过技术方案了解系统间的逻辑处理及调用情况。

接口说明文档:

接口文档必须清晰地提供如下的信息: 接口地址,功能描述,参数说明, 请求参数, 请求参数说明,参数类型,方法, 输入, 输出信息(返回结果说明), 数据库表地址。

接口测试用例的测试用例设计

业务功能
通过性验证,即正常功能是否正常工作。
参数边界验证。
业务规则是否处理完整,代码分支覆盖功能。

其他方面

异常场景(重复提交, 并发提交,事务终端, 异步处理)
性能测试(响应时间, 吞吐量, 并发数, 资源要求)
安全测试(敏感信息的传入传出, 权限, sql注入等)

接口测试的方法
借助工具,比如:postman,yapi, soapUI, jmeter。

代码模拟, 断言判断。

接口测试的重点

检查接口返回的数据是否与预期结果一致。
检查接口的容错性,假如传递数据的类型错误时是否可以处理。
接口参数的边界值。例如,传递的参数足够大或为负数时,接口是否可以正常处理。界面测试很多都设置好了边界,不一定能测出接口的边界问题。
接口的性能,http请求接口大多与后端执行的SQL语句性能、算法等比较相关,可以关注接口的响应时间, 并发, 服务端资源的使用情况。
接口的安全性,外部调用的接口尤为重要。
接口测试跟WEB/APP测试的区别
接口测试和app/web测试的活动有部分重复的内容,主要集中在业务功能测试方面。

除此之外,接口测试可以关注与服务器逻辑验证, 而UI测试关注也页面展示逻辑及界面前端与服务器即成验证。

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值