自动化测试接口测试前的【准备及思路】
创始人
2024-06-03 06:12:57
0

准备工作这个视频讲的就很明白了:https://www.bilibili.com/video/BV1914y1F7Bv/?

目录:导读

1、什么是接口测试

2、接口分类

3、接口测试都需要测什么

4、接口测试自动化的必要性

5、接口自动化怎么实现

6、自动化框架知识准备及设计思路

     写在最后


1、什么是接口测试

客户端(前端)与服务端(后端)的关系,一般小编会理解为“服务端负责赚钱养家,客户端负责貌美如花”。客户端更注重的是功能呈现及用户体验,怎么将强大的功能精彩的界面呈现给不同的用户,怎么吸引用户使用它,而服务端则是更多的输出所提供功能服务,如功能逻辑,业务逻辑,算法等等,是完美呈现功能的数据提供者。比如你想买件上衣,那么推荐算法给你推荐的就是上衣,而不是裤子。而接口正是服务端提供给客户端这些功强大功能的一个桥梁。

接口测试就是借助工具模拟客户端向服务端发送请求报文,提供不同的输入参数,服务器接收到请求报文后,对相应的报文即不同的输入参数进行处理,然后返回给客户端响应。工具可以模拟客户端同时接收响应,测试就是要检查请求及返回是否符合需求预期。

2、接口分类

接口分为:内部接口和外部接口。内部接口是内部代码交互调用时用到的接口,如白盒测试就是测试的内部接口;外部接口是客户端与服务器交互时用到的接口,如http接口、Web service接口等

3、接口测试都需要测什么

下面是用一张导图总结了一下接口测试主要测试的内容:

以上我们可以看出接口测试对服务端的业务功能逻辑能够达到很好的验证,并且接口测试可以不涉及客户端(前端)的交互,不存在兼容问题,只需要根据接口文档发送对应的请求并对请求结果进行校验即可,本文及之后文章也主要跟大家交流的是接口的功能测试及自动化相关内容。

4、接口测试自动化的必要性

1.API编程已经是近年来非常流行的技术

2.可以发现在客户端(前端)发现不了的bug,如服务端对异常情况的校验

3.适用于目前流行的敏捷开发,在产品需求迭代中能够实现快速的自动化接口验证

4.自动化接口测试实现能够对线上环境的接口监控

5.接口变更频率远远低于UI,所以所需的维护成本更低

6.实现接口自动化更容易(无论是使用工具还是自动化框架),且更容易持续集成

5、接口自动化怎么实现

1.借助工具,如现在已经非常成熟的postman、jmeter、RESTClint、SoapUI等

现成的工具易于上手,但是针对不同的业务场景可能存在一定的局限性,可扩展性不够灵活。

2.接口自动化测试框架

需要一定的编码能力,但可结合业务需求自行封装,可扩展性较强,且易于持续集成。

6、自动化框架知识准备及设计思路

目前小编所涉及业务的接口基本都是基于http协议的,返回的数据类型也大都是json格式,少量是xml格式。

  • 知识准备相关:

1.理解http协议

2.理解http请求的整个流程

3.了解常用的认证机制

4.数据库

5.redis

6.基本的代码能力(结合自己情况选择自动化框架的语言)

  • 设计思路相关

1.公共api封装

a.接口请求封装

b.公共请求数据或参数分离(请求域名、公共请求参数)

c.不同接口请求参数的获取(可以用xml、json、excel、csv等格式)

d.数据库api的封装(增删改查)

e.redis api的封装(增删改查)

2.每条case验证测试数据的准备

3.验证点(通过断言验证)

对于接口返回的比较有规范的代码:

a.http状态码

b.业务状态码,一般比较规范的代码返回正常逻辑的数据会规定code=0或1(可能key是其他名称,由开发同学自己定义)

c.消息,一般比较规范的代码返回正常逻辑的数据会规定msg=ok或error(可能key是其他名称,由开发同学自己定义)

d.数据(业务逻辑返回客户端或前端需要的数据格式)

好了,以上内容做到心里有数之后,就可以开开心心的进行自动化框架设计了,测试框架设计及编写测试用例过程中遇到的问题,后续文章会跟大家一一交流。

写在最后

如果你觉得文章还不错,请大家 点赞、分享、留言 下,因为这将是我持续输出更多优质文章的最强动力!

看到这篇文章的人有觉得我的理解有误的地方,也欢迎评论和探讨~

你也可以加入下方的的群聊去和同行大神交流切磋

 

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
有效的括号 一、题目 给定一个只包括 '(',')','{','}'...
【Ctfer训练计划】——(三... 作者名:Demo不是emo  主页面链接:主页传送门 创作初心ÿ...