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

devtools/2025/1/11 15:12:44/

目录

一、项目接口概况

二、单接口测试-登录接口: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接口测试01|接口测试基础概念、http协议、RESTful风格、接口文档-CSDN博客

Postman接口测试02|接口用例设计_postman测试用例-CSDN博客

Postman接口测试03|执行接口测试、全局变量和环境变量、接口关联、动态参数、断言_postman内置动态参数-CSDN博客

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

Postman接口测试05|实战项目笔记-CSDN博客


http://www.ppmy.cn/devtools/149636.html

相关文章

业务日志设计

当一个项目足够大的时候,我们需要将统计系统完全独立出去,那么就无法避免数据采集的问题,我们可以在业务触发处增加log日志来记录当前变化的原始数据,提供统计系统进行采集 设计一个统计系统的日志记录机制时,主要需要…

ubuntu22.04 的录屏软件有哪些?

在Ubuntu 22.04上,有几款适合做视频直播和录屏的软件: 1. OBS Studio (Open Broadcaster Software) 功能:OBS Studio 是最常用的开源直播和录屏软件,支持视频录制、直播流式传输,并且有强大的插件支持,能…

uniApp 在真机环境下报错:包时未添加cemera模块,请参考https://ask.dcloud.net.cn/article/283

文章目录 问题分析 问题 uniApp 在真机环境下报错:包时未添加cemera模块,请参考https://ask.dcloud.net.cn/article/283 分析 打开提示的网址:https://ask.dcloud.net.cn/article/283,根据网址中的提示我们配置打包时的环境

Go语言的计算机基础

Go语言的计算机基础 引言 随着计算机科学技术的迅速发展,编程语言的演进也迎来了新的高峰。其中,Go语言(或称Golang)因其高效性、简洁性和易用性而备受关注。Go语言由谷歌于2007年开发,并在2009年正式发布。它旨在解…

【Python】Python与C的区别

文章目录 语句结束符代码块表示变量声明函数定义注释格式Python的标识符数据输入input()函数数据输出print()函数 语句结束符 C 语言 C 语言中每条语句必须以分号;结束。例如,int a 10;、printf("Hello, World!");。分号是语句的一部分,用于…

面试:类模版中函数声明在.h,定义在.cpp中,其他cpp引用引入这个头文件,会有什么错误?

1、概述 类模版中函数声明在.h&#xff0c;定义在.cpp中&#xff0c;其他cpp引用引入这个头文件&#xff0c;会有什么错误?报编译错误&#xff1a;error C2512: Demo<int>: no appropriate default constructor available 举例如下代码&#xff1a;demo.h 声明模版类 …

智元机器人完成 1000 台通用具身机器人下线

2025 年 1 月 6 日&#xff0c;智元机器人宣布其量产的第 1000 台通用具身机器人正式下线245。此次下线的机器人中&#xff0c;双足人形机器人 731 套&#xff0c;型号为远征 A2、灵犀 X1&#xff1b;轮式通用机器人 269 套&#xff0c;型号为远征 A2-D、A2-W57。 智元机器人位…

HarMonyOS 鸿蒙系统使用 Grid构建网格

网格布局是由“行”和“列”分割的单元格所组成&#xff0c;通过指定“项目”所在的单元格做出各种各样的布局。网格布局具有较强的页面均分能力&#xff0c;子组件占比控制能力&#xff0c;是一种重要自适应布局&#xff0c;其使用场景有九宫格图片展示、日历、计算器等。 Ar…