多平台统一管理软件接口,如何实现多平台统一管理软件接口
578
2023-07-04
本文讲了http接口测试方法,http接口测试的测试用例设计。
一、什么是HTTP
1、定义
大家都知道程序=算法+数据结构,CPU调用程序运行时,程序就转变成了进程实体。如果想要两台计算机上的进程相互通信,就需要通过网络实现。而两台计算机之间通信的规则,则是由通信协议决定的。
根据OSI七层模型,每一个层级都有与之对应的通信协议。OSI七层协议模型从上到下分为应用层、表现层、会话层、传输层、网络层、链路层、物理层,而HTTP就是应用层的一种协议。
HTTP协议(HyperText Transfer Protocol,超文本传输协议)是因特网上应用最为广泛的一种网络传输协议,所有的WWW文件都必须遵守这个标准。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)[取自菜鸟网站]。
2、HTTP工作架构
HTTP是基于客户端-服务端架构的工作方式:
客户端通过HTTP协议,使用URL请求服务端接口,获取响应数据,再渲染在前端页面呈现给用户。
3、结构(取自菜鸟网站)
3.1 客户端请求消息
客户端发送一个HTTP请求到服务器的请求消息包括以下格式:请求行(request line)、请求头部(header)、空行和请求数据四个部分组成,下图给出了请求报文的一般格式。
3.2 服务端请求消息
HTTP响应也由四个部分组成,分别是:状态行、消息报头、空行和响应正文。
HTTP接口的测试用例设计
和功能测试一样,在进行接口测试前,需要进行接口的测试用例设计,用例设计也不是凭空想象,我们需要以相关文档为依据
功能测试用例:一般是根据产品需求文档PRD或者交互设计文档来进行设计
接口测试用例:一般是依据接口文档和技术方案来进行设计
由于HTTP协议的接口应用非常广泛,下面以HTTP协议接口为例,教大家设计接口测试用例
一个合格的HTTP接口文档,至少应具备如下信息,即请求方式(一般为GET或者POST)、请求URL、请求参数、预期返回结果,举个接口文档的例子
请求方式
Get
请求URL
/test/api/getlist
请求参数
参数名 | 是否必传 | 数据类型 | 说明
source_type Y int 来源:百度1;好看2;贴吧3
page Y int 页码
per_page Y int 每页数量
word N string 关键词
预期返回结果
{
"errno": 0,
"status": 0,
"msg": "success",
"time": 1637156975,
"duration": 0.01242208480835,
"requestid": 2975372392
}
开发提供的接口文档可能存在不规范或者压根没有接口文档的情况,这时候需要推动开发补齐信息,不然对测试来说没有接口文档就无法提前设计用例,并且进行测试也比较困难
如果实在没有接口文档,那么测试只能通过Charles、Fiddler等抓包工具,通过线上环境或者测试环境抓包获取接口信息
有了接口文档以后,我们就可以开始接口测试用例的设计,而接口测试用例设计的重点,在于功能性的业务逻辑检查和参数检查。可以从输入(请求)参数、接口业务逻辑处理、接口输出(返回结果) 三个方面来进行考虑
另外对于客户端功能测试的用例设计方法,如等价类和边界值,在接口测试用例设计对于设计输入参数的部分同样适用,如对于请求参数的有大小限制,运用边界值设计,我们可以分别取空、最小值、最小值-1、最大值、最大值+1来测试
接口业务逻辑处理的接口用例设计是重中之重,对于这方面的用例设计,除了仔细看接口文档,还需要我们详细阅读开发写的技术方案,在技术方案当中一般有程序流程图,数据流图或者时序图
如以下时序图,我们可以清晰的知道每个接口做了哪些操作,关键参数传递,数据如何存放、消费等,从而方便检查当调用接口后数据的落库情况,以及调用接口后业务逻辑是否符合预期
用例除了正常的接口功能流程,接口业务逻辑异常场景也需要考虑,常见的异常场景是数据库连接超时、没有满足前置条件,如:某个接口需要先登录获取 sesssion,如果直接调用该接口应该给出相应提示
接口用例设计小结
如果输入参数、接口业务逻辑处理(正常与异常流程)、返回结果这三个方面考虑全面的话,接口的功能测试用例基本可覆盖以下三点:
主流程测试用例:正常的主流程业务需求校验
分支流程测试用例:正常的分支流程需求校验
异常流程测试用例:异常业务场景的容错校验
HTTP请求方法
(注:这是重点!经常会考的!)
HTTP常用请求方法:
GET :发送请求来获得服务器上的资源,请求体中不会包含请求数据,请求数据放在协议头或URL中。
POST:向服务器提交资源让服务器处理,比如提交表单、上传文件等,可以建立新的资源或者对原有资源的修改。提交的资源放在请求体中。
PUT:和post类似,发送资源与服务器,并存储在服务器指定位置。
DELETE:请求服务器删除某资源。
上文就是小编为大家整理的http接口测试方法,http接口测试的测试用例设计。
国内(北京、上海、广州、深圳、成都、重庆、杭州、西安、武汉、苏州、郑州、南京、天津、长沙、东莞、宁波、佛山、合肥、青岛)http接口测试工具分析、比较及推荐。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~