当前位置: 首页 > news >正文

Postman接口测试05|实战项目笔记

目录

一、项目接口概况

二、单接口测试-登录接口:POST

1、正例

2、反例 

①姓名未注册

②密码错误

 ③姓名为空

④多参

⑤少参

⑥无参

三、批量运行测试用例

四、生成测试报告 

1、Postman界面生成 

2、Newman命令行生成 

五、token鉴权(“令牌”)

1、访问phpwind论坛首页

2、登录接口(需要token)

六、 业务场景测试-客户管理

1、添加客户:POST

2、查询客户列表:GET 

​3、修改客户:PUT

​4、删除客户信息:DELETE

七、批量运行测试用例和生成测试报告


使用和参考的资料:

1、接口测试-第04天-课堂笔记.pdf

2、测试系统1-白月黑羽SMS 以及 测试系统2 - phpwind

3、BYSMS系统 API 接口文档 1.2

一、项目接口概况

二、单接口测试-登录接口:POST

测试用例参考:Postman接口测试02|接口用例设计-CSDN博客中的 3、单接口测试用例

按照登录接口的测试用例,在创建的“登录”接口依次执行该接口的测试用例。 

1、正例

写断言

2、反例 

  • 由于是同一个接口,因此:请求方法、URL、请求头完全一致。
  • 测试点(测试用例名称)、和 请求数据(请求体),各不相同
  • 响应结果(用作断言),共2种情况:{"ret": 0}和{"ret": 1, "msg": "用户名或者密码错误"}

其他姓名含有不符合要求的字符,密码为空,密码含有不符合要求的字符、密码1位、密码200位等跟其他用例很类似,下面只对典型用例重点记录: 

①姓名未注册
姓名的值随便写一个不正确的
根据相应的响应信息,修改断言
②密码错误
在上一个用例的基础上,只把密码改成错误的即可
 ③姓名为空
在上一个用例的基础上,只把姓名为空即可
④多参

多参的响应结果应该和正例的响应结果一样,因为后台处理已经能拿到需要的参数值,多出来的参数和值没有代码会处理它,有没有都不会起什么作用。

在正例“登录成果”的基础上,请求体里加个参数即可
⑤少参
在“密码错误”用例的基础上,不选password参数即可
⑥无参
在“少参”用例基础上,不选任何一个参数即可

三、批量运行测试用例

四、生成测试报告 

1、Postman界面生成 

然后选一个文件夹保存报告即可,生成的报告是json文件

2、Newman命令行生成 

具体步骤看下面连接的:十六、Newman生成测试报告 

Postman接口测试04|批量运行测试用例、参数化、Mock Server、Cookie鉴权、Newman生成测试报告-CSDN博客

五、token鉴权(“令牌”)

由于白月黑羽系统没有鉴权功能,所以换成新系统phpwind来练习

1、访问phpwind论坛首页

只需要填一下url即可

获取响应中的鉴权码,并将其设置成全局变量

 2、登录接口(需要token)

url:http://47.107.116.139/phpwind/index.php?m=u&c=login&a=dorun

请求头(必填参数):

  • Accept:application/json, text/javascript, */*; q=0.01
  • X-Requested-With:XMLHttpRequest
设置请求头的两个必选参数
1、获取"登录接口"拿到的全局变量csrf_token的值;2、响应体中state的值为success,表示响应成功。
断言也通过了

六、 业务场景测试-客户管理

1、添加客户:POST

这里把获取响应体中的json数据,并把id的值设置成全局变量kehu_id,注意这里的id在数据库中是个自增长字段

2、查询客户列表:GET 

1、参数具体信息看接口文档;2、查询出了包含“测试”关键字的客户信息,其中就包含刚才创建的id40

3、修改客户:PUT

注意这里箭头指的是个全局变量,查找在“添加客户”接口处新增的对应id客户

4、删除客户信息:DELETE

注意这里请求里仍然是用到了全局变量,用来获取在“添加用户”接口处新增的对应客户id

【总结】经过增、查、改、删按序执行接口测试,完成了业务闭环,也没有在数据中留下垃圾数据。

七、批量运行测试用例和生成测试报告

  • 批量运行测试用例参考本文的第三部分
  • 生成测试报告部分看:下面链接的十六、Newman生成测试报告

(该链接里生成报告部分的bash命令截图和最终生成的html报告截图即本文业务场景测试部分的真实实战截图。)Postman接口测试04|批量运行测试用例、参数化、Mock Server、Cookie鉴权、Newman生成测试报告-CSDN博客

相关文章:

Postman接口测试05|实战项目笔记

目录 一、项目接口概况 二、单接口测试-登录接口:POST 1、正例 2、反例 ①姓名未注册 ②密码错误 ③姓名为空 ④多参 ⑤少参 ⑥无参 三、批量运行测试用例 四、生成测试报告 1、Postman界面生成 2、Newman命令行生成 五、token鉴权(“…...

【paddle】初次尝试

张量 张量是 paddlepaddle, torch, tensorflow 等 python 主流机器学习包中唯一通货变量,因此应当了解其基本的功能。 张量 paddle.Tensor 与 numpy.array 的转化 import paddle as paddle import matplotlib.pyplot as plt apaddle.to_t…...

01-2023年上半年软件设计师考试java真题解析

1.真题内容 在某系统中,类 Interval(间隔) 代表由下界(lower bound(边界))上界(upper bound )定义的区间。 要求采用不同的格式显示区间范围。 如[lower bound , upper bound ]、[ lower bound … upper bound ]、[ lower bou nd - upper bound &#x…...

一文讲清楚CSS3新特性

文章目录 一文讲清楚CSS3新特性1. 新增选择器特性2. 新增的样式3. 新增布局方式 一文讲清楚CSS3新特性 1. 新增选择器特性 层次选择器(div~p)选择前面有div的p元素伪类选择器 :first-of-type 表示⼀组同级元素中其类型的第⼀个元素:last-of-type 表示⼀组同级元素中其类型的最…...

系统设计案例:设计 Spotify

https://levelup.gitconnected.com/system-design-interview-question-design-spotify-4a8a79697dda 这是一道系统设计面试题,即设计 Spotify。在真正的面试中,你通常会关注应用程序的一两个主要功能,但在本文中,我想从高层次概述…...

太速科技-633-4通道2Gsps 14bit AD采集PCie卡

4通道2Gsps 14bit AD采集PCie卡 一、板卡概述 二、性能指标 板卡功能 参数 内容 ADC 芯片型号 AD9689 路数 4路ADC, 采样率 2Gsps 数据位 14bit 数字接口 JESD204B 模拟接口 交流耦合 模拟输入 1V 连接器 6路 SMA 输入阻抗 50Ω 模拟指…...

图片叠加拖拽对比展示效果实现——Vue版

图片叠加拖拽对比展示效果实现——Vue版 项目中遇见一个需求:2张图片按竖线分割,左右两侧分别展示对应图片,通过滚动条拖动对应展示图片区域;; 网上搜索了下,没有找到直接可用的组件,这里自己封装了一个次功…...

结合长短期记忆网络(LSTM)和无迹卡尔曼滤波器(UKF)的技术在机器人导航和状态估计中的应用前景

结合长短期记忆网络(LSTM)和无迹卡尔曼滤波器(UKF)的技术在机器人导航和状态估计中具有广泛的应用前景。如有滤波、导航方面的代码定制需求,可通过文末卡片联系作者获得帮助 文章目录 结合LSTM和UKF的背景结合LSTM和UKF的优势应用实例研究现状MATLAB代码示例结论结合LSTM和…...

【MATLAB APP Designer】小波阈值去噪(第一期)

代码原理及流程 小波阈值去噪是一种信号处理方法,用于从信号中去除噪声。这种方法基于小波变换,它通过将信号分解到不同的尺度和频率上来实现。其基本原理可以分为以下几个步骤: (1)小波变换:首先对含噪信…...

ClickHouse副本搭建

一. 副本概述 副本的目的主要是保障数据的高可用性,ClickHouse中的副本没有主从之分。所有的副本都是平等的。 副本写入流程: 二. 副本搭建 1. 实验环境 hadoop1(192.168.47.128) hadoop2(192.168.47.129)2. 修改配置文件 修改两台主机/etc/click…...

K3知识点

提示:文章 文章目录 前言一、顺序队列和链式队列题目 顺序队列和链式队列的定义和特性实际应用场景顺序表题目 链式队列 二、AVL树三、红黑树四、二叉排序树五、树的概念题目1左子树右子树前序遍历、中序遍历,后序遍历先根遍历、中根遍历左孩子右孩子题目…...

cocos creator 3.x版本如何添加打开游戏时首屏加载进度条

前言 项目有一个打开游戏时添加载入进度条的需求。这个功能2.X版本是自带的,不知为何在3.X版本中移除了。 实现 先说一下解决思路,就是在引擎源码加载场景的位置插入一个方法,然后在游戏入口HTML处监听即可。 1.找到对应源码脚本 在coco…...

Fama MacBeth两步法与多因子模型的回归检验

Fama MacBeth两步法与多因子模型的回归检验 – 潘登同学的因子投资笔记 本文观点来自最近学习的石川老师《因子投资:方法与实践》一书 文章目录 Fama MacBeth两步法与多因子模型的回归检验 -- 潘登同学的因子投资笔记 多因子回归检验时序回归检验截面回归检验Fama–…...

IDEA 搭建 SpringBoot 项目之配置 Maven

目录 1?配置 Maven 1.1?打开 settings.xml 文件1.2?配置本地仓库路径1.3?配置中央仓库路径1.4?配置 JDK 版本1.5?重新下载项目依赖 2?配置 idea 2.1?在启动页打开设置2.2?配置 Java Compiler2.3?配置 File Encodings2.4?配置 Maven2.5?配置 Auto Import2.6?配置 C…...

node.js之---事件循环机制

事件循环机制 Node.js 事件循环机制(Event Loop)是其核心特性之一,它使得 Node.js 能够高效地处理大量并发的 I/O 操作。Node.js 基于 非阻塞 I/O,使用事件驱动的模型来实现异步编程。事件循环是 Node.js 实现异步编程的基础&…...

Python OpenAI 库开发指南:从入门到实战精通

在人工智能(AI)领域,OpenAI无疑是全球最受瞩目的机构之一。它推出的GPT系列模型、DALLE等创新技术,正在深刻改变各行各业。作为Python开发者,我们该如何快速上手并高效利用OpenAI的API,成为了提升个人竞争力…...

flash-attention保姆级安装教程

FlashAttention安装教程 FlashAttention 是一种高效且内存优化的注意力机制实现,旨在提升大规模深度学习模型的训练和推理效率。 高效计算:通过优化 IO 操作,减少内存访问开销,提升计算效率。 内存优化:降低内存占用…...

送给一年编程道路的自己

回望过去一年在编程道路上的成长与收获,是一个很有意义的过程。总结自己这一年的编程经历,不仅可以帮助你更清晰地了解自己的进步和不足,还能为未来的发展指引方向。以下是一些可能的收获,供你参考: 1. 技能提升 语言…...

LeRobot(1)

Train python lerobot/scripts/train.py \ policyact \ envaloha \ env.taskAlohaInsertion-v0 \ dataset_repo_idlerobot/aloha_sim_insertion_human \ load_data一直报错,忘记截图了,反正是ssh报错,下不下来,网…...

C++ 设计模式:组合模式(Composite Pattern)

链接:C 设计模式 链接:C 设计模式 - 迭代器模式 链接:C 设计模式 - 职责链模式 组合模式(Composite Pattern)是一种结构型设计模式,它允许你将对象组合成树形结构来表示“部分-整体”的层次结构。组合模式…...

蓝桥杯省赛真题解析:用动态规划搞定‘积木画’问题(附Python/Java/C++三种代码)

蓝桥杯竞赛实战:动态规划解积木画问题的多语言实现 第一次参加蓝桥杯的选手往往会被"积木画"这类动态规划题目难住——看似简单的图形拼接背后隐藏着精妙的状态转移逻辑。这道题考察的不仅是编码能力,更是对问题抽象和数学建模的深刻理解。本文…...

书籍分享:《VirtualLab Fusion物理光学实验教程》

第一章 物理光学概念介绍 1.1 几何光学和光线追迹 1.2 物理光学和光场追迹 1.3 电场、磁场以及坡印廷矢量 1.4 振幅、相位及实部和虚部 1.5 振幅、相位与偏振 1.6菲涅尔公式 1.7 全反射 1.8倏逝波 第二章 光的干涉及干涉系统建模仿真 2.1 牛顿环模拟仿真 2.1.1 牛顿…...

3分钟快速上手:MetaTube插件为Jellyfin/Emby自动刮削完整元数据指南

3分钟快速上手:MetaTube插件为Jellyfin/Emby自动刮削完整元数据指南 【免费下载链接】jellyfin-plugin-metatube MetaTube Plugin for Jellyfin/Emby 项目地址: https://gitcode.com/gh_mirrors/je/jellyfin-plugin-metatube MetaTube插件是专为Jellyfin和Em…...

Codesys运动学模型选型避坑指南:你的机械手真的适合TRAFO.Kin_ArticulatedRobot_6DOF吗?

Codesys运动学模型选型避坑指南:你的机械手真的适合TRAFO.Kin_ArticulatedRobot_6DOF吗? 在工业自动化领域,机械手的精准控制离不开正确的运动学模型选择。许多开发者在使用Codesys进行机械手控制时,常常陷入一个误区:…...

5G基站氮化镓功率放大器模块:技术原理、设计挑战与应用实践

1. 项目概述:当5G基站遇上氮化镓“心脏”最近,业内一个消息引起了我的注意:三菱电机开始提供用于5G Massive MIMO基站的氮化镓(GaN)功率放大器(PA)模块的样品。这听起来可能有点技术化&#xff…...

IGBT开关波形实测分析:用示波器抓取米勒平台与拖尾电流,优化你的驱动参数

IGBT开关波形实战解析:从示波器捕获到驱动参数优化 当你在实验室里面对一块IGBT电路板,示波器屏幕上跳动的波形往往藏着关键的设计秘密。那些看似平常的米勒平台、拖尾电流和电压尖峰,实际上是功率器件在向你诉说它的工作状态。本文将带你深入…...

2026年计算机专业就业现状,不想35岁被淘汰?网络安全或许是程序员的最佳转型方向!

计算机专业虽进入分化阶段,但网络安全人才缺口达300万,高端领域供不应求。高校扩招与市场需求脱节导致供需失衡,未来"计算机行业"的复合型人才更具竞争力。建议早做规划,构建"T型能力体系",掌握前…...

Python之vyvert包语法、参数和实际应用案例

一、vyvert 包概述(Python) vyvert(0.1.0)是一个轻量级依赖注入(DI)库,灵感来自 pytest 与 FastAPI,主打简洁注解式注入、自动依赖解析、异步兼容。 定位:非侵入式 DI&am…...

智在记录 AI 语音转文字效果全景展示

在日常的工作和生活中,我们常常面临这样的困境:一场长达两小时的头脑风暴会议结束后,整理纪要却要花掉半天时间;课堂上老师语速飞快,笔记记得手忙脚乱,回头复习时却发现关键逻辑断档;或是医生叮…...

别再只用录屏软件了!用Unity Recorder H.264 MP4格式导出高清无压缩视频的完整配置流程

别再只用录屏软件了!用Unity Recorder H.264 MP4格式导出高清无压缩视频的完整配置流程 在数字内容创作领域,视频输出质量往往直接决定作品的专业度。许多开发者习惯使用第三方录屏工具捕捉Unity运行画面,却忽略了引擎内置的Unity Recorder模…...