这都不会,还敢说会接口测试?
前言
本文章使用王者荣耀游戏接口、企业微信接口的展示结合理论知识,讲解什么是接口测试、接口测试理论、疑问收录与扩展相关知识点的知识学院,快来一起看看吧~
1
接口测试基础理论
接口测试:接口测试是测试系统组件间接口的一种测试,主要用于测试系统与外部其他系统之间的接口,以及系统内部各个子模块之间的接口。– 百度百科
接口原理:模拟客户端向服务器发送请求报文,服务器接收请求报文后对相应的报文做判断并将最终结果返回至客户端,客户端再次接收返回结果并应答的过程。
检查重点:测试的重点是检查接口参数传递、接口功能实现、输出结果的正确性,以及对各类异常情况容错处理的完整性与合理性。
接口类型:内部接口及外部接口,内部接口为程序开发的接口,方法之间或模块之间的调用,外部接口为外部接入调用接口,例如王者荣耀的微信登录、支付宝的支付功能等,均是外部接口。
接口分类:webservice接口及http api接口,webService接口使用soap协议传输,通过http进行传输,是HTTP POST专用版本之一,遵循一种特殊的xml消息格式(请求及返回均为xml),http api接口使用http协议,通过路径来区分调用的方法,通过key-value请求,返回报文通常为json。
接口本质:接口的本质上是一个公开的函数类,进行数据传输的发送与接收,可以理解成一条通道,在发送get或post请求方式时,实际上就是从通道进行发送、在由服务器从通道返回数据。
测试范围:接口功能、接口性能、接口稳定性以及接口安全性等。
2
为什么要进行接口测试
3
如何开展接口测试
3.1、接口开展方式
业务层面:
常用接口测试工具:Postman、Jmeter、SoupUI等。
接口测试工具原理:通过接口测试工具模拟请求与数据接收,实现数据传输。
代码层面:
接口自动化测试:通过代码实现,发送请求通过代码断言判断接口正确性。
ps:会在后续自动化的文章教学接口自动化框架搭建、持续集成等内容。
3.2、接口测试流程
简单介绍接口信息中对应信息所产出的内容:
模块名称:登录、支付等
子模块名:微信登录、QQ登录、手机号登录
业务描述:简洁概括接口的功能
接口名称:
/login/wechat,/payment/personal
请求方法:GET / POST 等
请求格式:application/x-www-form-urlencoded
响应格式:application/json
请求参数:手机号、登录密码(包括变量名、类型、说明注释、是否必填)
结果说明:参数内容、变量名、类型(例如string),返回状态码等
返回示例:返回成功的举例,下方4.4接口演示中有图片体现
3.5、接口测试用例设计
用例设计格式:
用例序号:项目名称_模块名称_序号
接口模块:对应的接口模块,例如英雄列表、召唤师技能,企业微信的登录模块、语音模块等
请求方式:通常请求方式为GET、POST
接口地址:通常有固定的地址格式便于接口自动化测试(图中的是全地址)
接口参数输入:部分接口不需要接口参数的输入,部分存在接口输入,如果有,填写即可
用例设计重点及关注点:
(1)发送给服务器的请求数据是否正确;
(2)服务器返回给客户端的数据是否与需求一致,符合预期;
(3)查看数据库中接口是否实现对应功能;
(4)接口的响应时间是否符合需求文档要求
接口用例设计考虑的范围:
1、业务功能:功能是否实现
2、业务规则:定义的描述是否符合预期
3、请求参数:参数的长短、大小、格式等
4、异常场景:传参异常、操作异常、服务异常等
5、数据传输:数据传输结果的正确性
6、接口性能:接口性能的正确,例如并发等
7、接口安全:如支付类、充值接口的数据篡改等
ps:在以上范围内还需要考虑接口的用例覆盖率及代码覆盖率,至少符合预期
3.6、后端接口测试内容
推荐阅读:
END
长按二维码/微信扫码 添加作者