接口测试知识点1

news2024/9/21 16:43:02

接口测试

软件接口,是指软件不同模块之间交互的接口,我们通常所说的API(Application Programming Interface 应用程序接口),即是软件系统不同模块之间衔接的约定。

接口测试即是对软件各个模块的接口进行的测试。

接口测试(API测试)是指对应用程序编程接口(API)进行验证的一种测试类型。接口测试主要目的是确保API在各种条件下按照预期的方式工作,涵盖了API的功能性、可靠性、安全性和性能等方面。

接口测试流程

拿到一个接口项目之后,先测试业务接口好事先测试单个接口?先测业务接口,确保核心业务正确。

如何测试业务接口?根据业务流程图去梳理业务路径;设计测试用例覆盖每一条业务路径。

需求分析:我们的需求来源于开发人员提供的一个接口文档,我们进行接口文档解析(地址信息,参数信息等待)

设计测试用例

脚本开发:通过工具或者代码来进行脚本的开发

执行脚本

缺陷跟踪

测试报告

URL基础介绍

url:互联网上标准资源的地址,一般称为 统一资源定位符   

组成:协议://hostname[:port] / path / [?查询参数1&查询参数2]

示例:http://kdtx-test.itheima.net:8080/contract/details?id=449280106&pageType=info

http:协议,数据传输的格式,http,https

kdtx-test.itheima.net:域名或者IP,服务器地址

8080:端口:一个应用程序对外访问的唯一标识,常用的80(http)\443(https)。默认端口可以省略

contract/details:资源路径,主机资源的具体地址,包含目录和文件名,用"/"隔开

id=449280106&pageType=info:参数部分,客户端向服务器传递的具体数据。

HTTP协议

HTTP协议:超文本传输协议,基于请求与响应的应用层协议

作用:规定了客户端与服务器之间的信息传递规范,是二者共同遵守的协议

组成:HTTP请求:定义请求数据格式。请求行、请求头、请求体

           HTTP响应:定义响应数据格式。状态行、响应头、响应体

HTTP请求-请求行

位置:请求数据的第一行

作用:说明请求方法、访问的资源、协议版本

常用的请求方法:GET:从服务器获取资源;POST:从服务器新建一个资源

                              PUT:在服务器更新资源 ; DELETE:从服务器删除资源

HTTP请求-请求头

位置:请求数据第二行到空白行之间

作用:通知服务器客户端请求信息

特点:请求头部由键值对组成,每行一对

Content-Type  :请求体数据类型.text/html:HTML格式;image/jpeg:jpg图片格式

                                                   application/json:JSON数据格式

                                                    application/x-www-form-uelencoded:表单默认的提交数据格式。

HTTP请求-请求体

位置:空白行之后

作用:传输数据实体。密码,用户等等

请求体常在POST、PUT方法中使用

常配合的请求头:Content-Type和Content-Length

请求报文中可以没有请求体数据

HTTP响应-状态行

位置:响应数据的第一行

作用:描述服务器处理结果

内容组成:协议版本号、状态码、状态消息

状态码:三位数字组成,第一个数字定义响应类别,1xx:指示信息,2xx:成功,3xx:重定向,4xx:客户端错误,5xx:服务端错误

  

HTTP响应-响应头

位置:数据第二行到空白行之间

作用:描述客户端要使用的一些附加信息

特点:响应头是由键值对组成,每行一对 

HTTP响应-响应体

位置:响应数据空白行之后

服务器返回的数据实体

返回的有图片、json、xml、html等多种类型

接口规范

RESTful:一种网络应用程序的设计风格和开发方式,提供了一组设计原则和约束条件。

 定位资源就是要操作的对象

解析接口文档

为什么要进行接口文档解析?

熟悉接口信息,为设计接口用例准备

接口API文档:一般由后端开发编写,用来描述接口信息的文档

如何进行接口文档解析?

(1)分析接口之间的依赖关系

比如购物车接口,需要用户登录,即购物车接口依赖于登录接口

(2)分析接口请求(如:URL、请求方法、请求头、请求参数类型、请求参数等)

(3)分析接口响应(如:响应状态码,响应数据)

测试用例示例:

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1974324.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

深入理解 HTTP 状态码

HTTP 状态码是服务器在收到客户端请求后返回的响应代码,用来表示请求的处理结果。这些状态码帮助用户理解请求是否成功以及服务器的响应状态。HTTP 状态码分为五大类,每一类都有特定的含义。下面,我们来详细解读这些状态码,帮助你…

前端的学习-CSS(弹性布局-flex)

一:什么是弹性布局-Flex flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性。 语法: .box{display: flex; } .box{display: inline-flex; } 注意,设为 Flex 布局以后&#xff0…

MySQL之delete 、truncate与drop区别

快速使用 drop:‌删除表及其所有数据【drop 表名】 truncate:‌仅删除表中的所有数据【truncate 表名】 delete:‌删除表中的特定行数据,‌可以指定条件删除 【delete from 表名】 1、功能差异 drop:‌删除表及其所有…

【Yolov8】实战三:手把手教你使用YOLOv8以及pyqt搭建中医耳穴辅助诊断项目原理及模型部署(下)

今天,学习RTMPose关键点检测实战。教大家如何安装安装MMDetection和MMPose。 实战项目以三角板关键点检测场景为例,结合OpenMMLab开源目标检测算法库MMDetection、开源关键点检测算法库MMPose、开源模型部署算法库MMDeploy,全面讲解项目全流程…

基于SpringBoot+Vue的校车调度管理系统(带1w+文档)

基于SpringBootVue的校车调度管理系统(带1w文档) 基于SpringBootVue的校车调度管理系统(带1w文档) 如今,因为无线网相关技术的快速,尤其是在网上进行资源的上传下载、搜索查询等技术,以及信息处理和语言开发技术的进步,同时编程语…

基于51单片机设计的温湿度采集检测系统仿真源码文档视频——文末资料下载

演示 基于51单片机设计的温湿度采集检测系统仿真&源码&文档视频——资料下载见简介 目录 1.系统功能 2.背景介绍 3.硬件电路设计 4.软件设计 4.1 主程序设计 4.2 温湿度采集模块程序设计 4.3 LCD显示屏程序设计 5.系统测试 6.结束语 源码、仿真、文档视频等资…

捉虫笔记(二)之 杀软请你自重点

捉虫笔记(二)之 杀软请你自重点 前一篇文章介绍了如何配置符号,这一篇文章我们来个实战。 1 现象 在我们的程序中利用robocopy进行文件的复制。但是QA反馈,只要进行了备份操作,整个进程就会卡住。但是奇怪的是只有他…

NIO专题学习(一)

一、BIO/NIO/AIO介绍 1. 背景说明 在Java的软件设计开发中,通信架构是不可避免的。我们在进行不同系统或者不同进程之间的数据交互,或者在高并发的通信场景下都需要用到网络通信相关的技术。 对于一些经验丰富的程序员来说,Java早期的网络…

前端 HTML 概述

目录 1. HTML概述 1.1 超文本标记语言 1.2 标签 2. HTML 解析与编辑 2.1 解析与访问 2.2 编辑 html文件 1. HTML概述 HTML( Hyper Text Markup Language:超文本标记语言 ):主要用于网页主体结构的搭建,在网页上…

维修雅萌五代射频仪

维修雅萌五代射频仪,主板进水,看起来有点严重,看看这回能不能把它修好

MySQL--数据库索引

前言:本博客仅作记录学习使用,部分图片出自网络,如有侵犯您的权益,请联系删除 MySQL数据库--索引 索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可提高数据库中特定数据的查询速度 一、索引简介 1、…

python实现小游戏——植物大战僵尸(魔改版本)

制作一款DIY的‘植物大战僵尸’游戏引起了很多人的兴趣。在这里,我将分享一个使用Python语言在PyCharm环境中开发的初始状态版本。这个版本主要应用了pygame库来完成,是一个充满创意和趣味的魔改版本。 文章目录 前言一、开发环境准备二、代码1.main方法…

Unbuntu 服务器- Anaconda安装激活 + GPU配置

一、Anaconda安装激活 1.更新 sudo apt-get update 2.安装wget、vim sudo apt-get install wget sudo apt-get install vim 3.安装Anaconda 进入这个网址:Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 点这里&#x…

【每日一题】【技巧】【LeetCode热题 100】【力扣】75. 颜色分类 C++

力扣75. 颜色分类 75. 颜色分类 题目描述 给定一个包含红色、白色和蓝色、共 n 个元素的数组 nums ,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。 我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。 …

永久旋转 PDF 文件的 2 种简便方法

PDF 文件通常由扫描仪创建,用于呈现文档或书籍。当您输出 PDF 作品时,打开它,会发现有几页是颠倒的。 你该怎么办? 将这些页面倒置扫描,按顺序排列,最后创建正确的 PDF 文件? 当然&#xff0…

暑假第三周任务——天气预报

暑假第三周任务——天气预报 文章目录 暑假第三周任务——天气预报前言URL与APIAPI与URL的关系 获取网络请求首页搜索界面详情界面添加功能 浏览界面总结 前言 这个天气预报主要是通过申请网络请求来获取实时数据,来实现一个天气预报的功能,在这里主要是…

对优先级队列(堆)的理解

目录: 一. 优先级队列: 二. 优先级队列的模拟实现: 三.常用接口介绍: 一. 优先级队列: 1 概念: 队列是一种先进先出的数据结构,但有些情况下,操作的数据可能带有优先级,一般出队列时…

红酒与爱情:浪漫时刻的佳酿

在爱情的世界里,红酒如同一首温柔的诗篇,轻轻诉说着浪漫与甜蜜。当定制红酒洒派红酒(Bold & Generous)与爱情相遇,它们共同绘制出一幅幅令人心醉的浪漫画卷,让每一刻都充满了无尽的柔情与温暖。 一、爱…

MLOPS工具集教程-快速入门MLflow

文章目录 一、什么是 MLOps?二、MLOps 工具有什么作用?三、免费开源 MLOps 工具和平台——MLflow3.1 MLflow介绍3.2 安装MLflow3.3启动MLflow3.4 API文档3.5 训练模型演示实例 MLOps 策略越来越多地应用于机器学习模型以及构建这些模型的团队中&#xff…

webpack打包发布~

1、安装webpack(局部安装webpack)。 npm i webpack webpack-cli -D 2、安装成功之后,你会在package.json文件中看到这个。 3、新建webpack.config.js文件,里面写配置编译模式,入口出口等(这里演示的是单入…