四、接口测试基础知识

news/2024/7/10 21:05:14 标签: postman, 笔记, 开源
1.接口规范

(接口是开发写的,但测试也需了解)

  • 1)传统风格

    • 接⼝统⼀采⽤get/post实现所有操作
    • URL与资源不是⼀⼀对应的,但在URL中查看出,是何种操作
    • 状态码统⼀返回200在这里插入图片描述
  • 2)RESTful风格接口

    • 接⼝使⽤的⽅法,与http协议的请求⽅法,⼀⼀对应
      • get - 查、post - 增、put - 改、delete - 删
    • URL 与资源****⼀⼀对应
      • uRl只表示资源,不能从 URL 中,看出是何种操作。
      • 需要通过结合请求⽅法来识别何种操作。
    • 响应状态码使⽤较为全⾯。通过标准HTTP方法对资源CRUD(C:创建R:搜索U:修改D:删除)在这里插入图片描述
  • 3)对比

    • 传统⻛格接⼝:只⽤ get、post⽅法。 URL 不唯⼀。 统⼀返回 200
    • RESTful⻛格接⼝:URL 唯⼀,定位资源。结合请求⽅法对应不同操作。 返回状态码较灵活。在这里插入图片描述
2.接口测试流程
  1. 需求分析(产品经理的需求⽂档)
  2. 接⼝⽂档解析(开发编写的接⼝API⽂档)
  3. 设计接⼝测试⽤例(编写 Excel 表格形式的⽤例)
  4. 准备接⼝测试脚本(脚本不一定是代码,代码可以是脚本)
    • postman ⼯具 ⽣成脚本
    • python 代码 编写脚本
  5. 执⾏测试⽤例,跟踪缺陷
  6. ⽣成 接⼝测试报告
  7. 接⼝⾃动化持续集成(可选)

流程图:在这里插入图片描述

3.接口文档解析
  • 什么是接口文档:也叫 API ⽂档,⼀般由后端开发⼯程师编写。⽤来描述接⼝信息的⽂档。

  • 接口文档的作用

    • 协同:团队⼈员⼯作协同配合
    • 约束:项⽬更新修改同步维护
  • 为什么要解析接口文档

    • 通过分析接⼝⽂档,熟悉接⼝信息。
    • 通过接⼝⽂档获取,接⼝测试所使⽤的请求数据(请求参数)、预期结果
  • 解析的核心目标

    • 请求报⽂关键数据
      • 请求⽅法→知道是什么请求、URL→知道要访问谁、请求数据(请求头、请求体)
    • 响应报⽂关键数据
      • 响应状态码、响应数据(响应体)→包含的是预期结果
  • 注:接口文档中的“请求参数”(也称请求数据)

    • 区分不是url格式中的查询参数
    • 通常指发送http请求时使用的参数(主要指请求头和请求体)
  • 注:区分状态码和接口文档中的错误码

    • 状态码:发送请求这件事是否成功
    • 错误码:完成登录/其他功能是否成功(例如虽然密码错了,但是请求发送成功了)
  • 注:接口文档中只能拿到预期结果

  • 解析ihrm系统接口文档在这里插入图片描述


http://www.niftyadmin.cn/n/5446680.html

相关文章

centos 环境部署

一、安装redis 1. 升级 GCC 最直接的解决方式是升级你的 GCC 编译器到支持 C11 标准的版本。CentOS 7 默认的 GCC 版本较旧,可能不支持 _Atomic。你可以通过以下步骤升级 GCC: 启用 CentOS 的 Software Collections (SCL) 仓库,该仓库提供了…

Qt 利用共享内存实现一次只能启动一个程序(单实例运行)

Qt 利用共享内存实现一次只能启动一个程序 文章目录 Qt 利用共享内存实现一次只能启动一个程序摘要利用共享内存实现一次只能启动一个程序示例代码 关键字: Qt、 unique、 单一、 QSharedMemory、 共享内存 摘要 今天接着在公司搞我的屎山代码,按照…

几种常见的IO模型学习

IO模型 IO模型(输入输出模型)是计算机科学中用于描述程序如何处理输入、产生输出以及与外部系统交互的一种概念模型。在操作系统和网络编程中,IO模型尤其重要,因为它们决定了程序如何与文件、网络套接字和其他资源进行通信。以下…

Exception 语句

上一篇的一元二次方程求根的例子&#xff0c;让我想起了一件事。一元二次方程求根的程序&#xff0c;如果遇到Delta<0&#xff0c;则无解&#xff0c;函数不能返回值。在这个例子中&#xff0c;print打印一条提示信息&#xff0c;然后在求平方根的过程中引发异常。这样处理&…

liunx centos7 下通过yum删除安装已经安装的php

执行下面命令查看php相关的包 rpm -qa | grep php 只需要卸载几个名为common的包即可&#xff0c;其他同版本依赖会被全部删除&#xff0c;删除php71w-common&#xff0c;71w版本的依赖包全部会被删除。 查看php包的命令 rpm -qa | grep php 或 yum list installed | gre…

飞桨AI应用@riscv OpenKylin

在riscv编译安装飞桨PaddlePaddle参见&#xff1a; 算能RISC-V通用云编译飞桨paddlepaddleopenKylin留档_在riscv下进行paddlelite源码编译-CSDN博客 安装好飞桨&#xff0c;就可以用飞桨进行推理了。刚开始计划用ONNX推理&#xff0c;但是在算能云没有装上&#xff0c;所以最…

鸿蒙实战开发-如何通过拖动滑块调节应用内字体大小

介绍 本篇Codelab将介绍如何使用基础组件Slider&#xff0c;通过拖动滑块调节应用内字体大小。要求完成以下功能&#xff1a; 实现两个页面的UX&#xff1a;主页面和字体大小调节页面。拖动滑块改变字体大小系数&#xff0c;列表页和调节页面字体大小同步变化。往右拖动滑块字…

蓝桥杯刷题--python-27--全球变暖-dfs-bfs

1.全球变暖 - 蓝桥云课 (lanqiao.cn) import os import sys # 请在此输入您的代码 sys.setrecursionlimit(60000) n int(input()) dao [] for _ in range(n): tmp list(input()) dao.append(tmp) dict [(1, 0), (0, 1), (-1, 0), (0, -1)] used [[0 for _ in range(n)] fo…