什么是接口自动化测试?接口自动化测试的目的是什么?

embedded/2025/2/22 10:52:40/

1、什么是接口测试

接口测试是对系统或组件之间的接口的测试。主要用于检测外部系统与系统间以及内部各个子系统间的交互点。测试重点是检查数据交换、传递和控制管理过程,以及系统间的相互逻辑依赖关系等。

2、接口测试的目的

1> 尽早介入软件测试流程,降低修复成本。分层进行多轮测试可以过滤出更多问题。

2> 接口测试的核心是持续集成。对接口进行自动化便于服务监控、回归测试及冒烟测试,保持平台稳定,提升用户体验。

3、接口测试所需条件

满足一下几点:1> 业务流:了解系统及内部各个组件之间的业务逻辑交互。

2> 数据流:了解接口的I/O(input/output:输入/输出)。

3> 协议:包括HTTP协议、TCP/IP协议。

4> 常用工具:jmeter、soapUI、postman、YApi等。

5> 数据库:增删改查(接口GET、POST、PUT等都是对数据的增删改查)。

6> 接口文档:一般是开发提供。

4、接口测试的流程图

5、接口自动化测试

5.1、如何开展

1> 调试单个接口,保证单个接口的正确和通畅。

2> 明确数据流,业务流。

3> 将N个接口测试脚本串起来,执行即可。

注意,别想太多太复杂,先把最基础最简单的做起来,就成功一大半了。定时任务、自动化测试报告、自动发邮件钉钉等功能,这些都是不断累积优化的过程。接口自动化测试落地,才是我们首先需要考虑的!

5.2、开展之前需要知道

1> 被测对象包含几个页面?

2> 每个页面涉及几个接口?

3> 分别在哪一步调用?

4> 每个接口包含哪些字段?

5> 各个字段对应数据库哪张表?

6> 每个表中各个字段是什么意思?

7> 各个接口对表产生了怎样的操作?

5.3、接口测试用例编写

通常情况下主要测试最外层的两类接口:数据进入系统接口(调用外部系统的参数为本系统使用)和数据流出系统接口(验证系统处理后的数据是否正常)。

接口用例分为单接口用例和场景用例两种。单接口用例从单个接口的功能和参数出发,每个参数都是一个交互点,结合业务,通过不同的参数组合来编写用例。场景用例以用户实际场景,通过多个接口的连续调用来模拟业务流程。一般来说,由于接口的主要使用对象为前端或其他模块的开发人员,接口测试应以业务场景为主。

接口测用例一般应包括编号、模块、用例标题、预置条件(数据准备)、步骤(请求方法、接口地址、请求数据、期望响应)等。以下为一种接口测用例模板。

编号模块用例标题请求方法接口地址请求数据数据准备SQL期望响应
001用户模块新用户注册POST/api/user/reg/{
"name": "张三",
"password": "123456"
}
DELETE FROM user WHERE name="张三";{
"code": "100000",
"msg": "成功",
"data": {
"name": "张三",
"password": "e10adc3949ba59abbe56e057f20f883e"
}
}
002用户模块新用户注册并登录POST/api/user/reg/{
"name": "张三",
"password": "123456"
}
DELETE FROM user WHERE name="张三";{
"code": "100000",
"msg": "成功",
"data": {
"name": "张三",
"password": "e10adc3949ba59abbe56e057f20f883e"
}
}
POST/api/user/login/name=张三&password=123456<h1>登录成功</h1>

001和002分别展示了一条单接口用例和接口常用用例,这里使用了不同的书写格式来表达JSON和传统表单URL编码格式,也可以单独增加一列来声明接口数据类型。也可以添加用例优先级、数据清理SQL、实际响应、用例执行状态等信息。

5.4、接口用例设计

接口用例设计应确保对变动代码达到一定的覆盖率(比如分支覆盖率100%),对于专职的服务端测试人员来说,接口测试是介于白盒和黑盒之间的灰盒测试。在服务端提测后,通过在Git上Changes和Review代码来明确代码的业务逻辑,对相应代码逻辑设计响应的用例以达到指定覆盖率。
对服务端提测前或纯黑盒的接口用例来说,可以参考以下几点。
1> 首先应核对接口功能是否覆盖了需求中所有的功能点和场景。
2> 由于请求接口必须使用指定的参数和规定的格式,接口文档是接口测试的必要条件,如果没有,需要跟相应的开发沟通了解接口请求方式,参数,格式,鉴权方式等必要信息。
3> 接口测试用例应至少覆盖所有的响应结果。
4> 注意接口的字段,返回值类型是否与前端约定的一致。
5> 注意边界值及负数的验证。
6> 注意接口重复请求、并发请求及数据量较多的请求。
7> 注意用户场景(多接口联动)的验证。


http://www.ppmy.cn/embedded/164302.html

相关文章

智能硬件-01智能停车场

行业背景 随着现代人们生活水平的提高&#xff0c;私家车辆在不断增加&#xff0c;小区将面临着临时车用户要多于固定车用户的窘境&#xff0c;尤其是在早晚高峰时段车辆出入拥堵&#xff0c;对小区的车辆管理难度越来越大&#xff0c;对停车场收费员的岗位要求越来越高&#…

android13修改系统Launcher不跟随重力感应旋转

android13系统中需要修改系统原生Launcher不跟随重力感应旋转。 通过代码查找发现packages/apps/Launcher3/src/com/android/launcher3/states/RotationHelper.java中存在一个函数getAllowRotationDefaultValue&#xff0c;用于获取是否允许旋转的默认值。 public static bo…

2025最新智能优化算法:鲸鱼迁徙算法(Whale Migration Algorithm,WMA)求解23个经典函数测试集,MATLAB

一、鲸鱼迁徙算法 鲸鱼迁徙算法&#xff08;Whale Migration Algorithm&#xff0c;WMA&#xff09;是2025年提出的一种新颖生物启发式元启发式优化方法&#xff0c;其灵感来源于座头鲸的协作迁徙行为。该算法通过模拟座头鲸的迁徙和捕食行为&#xff0c;实现了在优化过程中的…

国际间重要的生态环境公约

为了解决环境问题&#xff0c;国际社会制定了许多重要的环境公约&#xff0c;这些公约涉及气候变化、生物多样性、污染防治和森林保护等领域。以下是一些具有代表性的环境公约及其主要内容&#xff1a; 气候变化领域 • 《联合国气候变化框架公约》&#xff08;UNFCCC&#xf…

测试data_management函数

测试data_management函数 这是我最近正在开发的AI工具信息平台的部门功能模块测试&#xff0c;基于streamlit架构。整理出来与大家分享&#xff0c;也为我以后自己回溯找到资源。 为了测试 data_management 函数并结合 Excel 文件中的 “Tools” 表单内容&#xff0c;我们需要…

华为最新OD机试真题-找单词-Python-OD统一考试(E卷)

最新华为OD机试考点合集:华为OD机试2024年真题题库(E卷+D卷+C卷)_华为od机试题库-CSDN博客 题目描述 给一个字符串和一个 二维字符数组,如果该字符串存在于该数组中,则按字符串的字符顺序输出字符串每个字符所在单元格的位置下标字符串,如果找不到返回字符串“N” 1.需…

深度学习模型应用场景全解析:CNN、Transformer、BERT、RNN与GAN

在深度学习的广阔天地里&#xff0c;各种模型如繁星点点&#xff0c;各自闪烁着独特的光芒。今天&#xff0c;让我们一同探索这些模型的适用场景、优势与局限&#xff0c;为您在模型选择时提供一份实用的指南。 一、卷积神经网络&#xff08;CNN&#xff09; CNN&#xff0c;…

python与pycharm如何设置文件夹为源代码根目录

python与pycharm如何设置文件夹为源代码根目录 前言 当我们在当前项目下引入了其它项目的代码&#xff0c;这是其它项目的包的导入路径是不用于当前项目的&#xff0c;这样导致项目无法正常起来&#xff0c;但是我们又不可能一个个文件去处理&#xff0c;这时可以用下面的方式…