接口测试知识点1

接口测试

软件接口,是指软件不同模块之间交互的接口,我们通常所说的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)分析接口响应(如:响应状态码,响应数据)

测试用例示例:

相关推荐
niuniu_6668 小时前
Selenium 性能测试指南
selenium·测试工具·单元测试·测试·安全性测试
莓事哒8 小时前
selenium和pytessarct提取古诗文网的验证码(python爬虫)
爬虫·python·selenium·测试工具·pycharm
软件测试曦曦10 小时前
如何使用Python自动化测试工具Selenium进行网页自动化?
自动化测试·软件测试·python·功能测试·测试工具·程序人生·自动化
互联网杂货铺13 小时前
黑盒测试、白盒测试、集成测试和系统测试的区别与联系
自动化测试·软件测试·python·功能测试·测试工具·单元测试·集成测试
Feng.Lee1 天前
聊一聊缓存如何进行测试
功能测试·测试工具·缓存
爱学测试的雨果1 天前
Postman —— postman实现参数化
软件测试·功能测试·测试工具·lua·postman
互联网杂货铺1 天前
如何用Postman实现自动化测试?
自动化测试·软件测试·python·测试工具·测试用例·接口测试·postman
niuniu_6661 天前
安全性测试(Security Testing)
测试工具·单元测试·appium·测试·安全性测试
薄荷你玩_1 天前
简单粗暴,用浏览器调试端口绕过Selenium/Playwright/Puppeteer检测
selenium·测试工具
程序员三藏1 天前
Python+Jenkins+Allure Report接口自动化测试持续集成
自动化测试·软件测试·python·测试工具·ci/cd·jenkins·测试用例