Postman测试学习(1)

记录B站某个教学视频学习历程,学习链接放在评论区置顶,仅做学习记录。

测试内容概览

使用Postman对某读书网站的【新书加入书架】功能进行自动化测试。过程中用到POST和GET报文。

步骤一:登录,构建POST报文

(1)Body设置:

  • 用户名参数:Key(username),Value(123456789);
  • 密码参数:Key(password),Value(123456)。

(2)Scripts------response设置:

使用JavaScript脚本将登录时返回的token设置成全局变量,以供后续报文身份验证测试相关功能。

同时最后设置断言,如果成功,则打印成功码为200。

javascript 复制代码
// 把json字符串转化为对象
var data=JSON.parse(responseBody);

// 获取data对象的token值
var token=data.data.token;

// 设置成全局变量
pm.globals.set("token",token);
pm.test("Status code is 200", function() {
    pm.response.to.have.status(200);
});

(3)Headers设置:

使用步骤一获得的token,通过身份验证。

  • 认证头参数:Key(Authorization),Value({{token}});

步骤二:加入书架,构建POST报文

(1)Body设置:

此处是通过两个参数确定目标书籍,不代表所有读书网站锁定书籍参数,仅做示例。

  • 书籍ID参数:Key(bookId),Value(261);
  • 最新书籍编号ID参数:Key(lastBookIndexId),Value(1260)。

(2)Scripts------response设置:

设置断言,如果成功,则打印成功码为200。

javascript 复制代码
pm.test("Status code is 200", function() {
    pm.response.to.have.status(200);
});

步骤三:获取书架内容,验证是否已加入,构建GET报文

(1)Scripts------response设置:

设置断言,此处仅判断当前书架的第一本书籍是否为刚才所加入的新书。

javascript 复制代码
pm.test("list中第一个bookid对不对",function() {
    pm.expect(pm.response.json().data.list[0].bookId).to.eql('261');
})

(2)Headers设置:

使用步骤一获得的token,通过身份验证。

  • 认证头参数:Key(Authorization),Value({{token}});

运行集合查看测试结果

相关推荐
lingggggaaaa2 分钟前
小迪安全v2023学习笔记(一百四十五讲)—— Webshell篇&魔改冰蝎&打乱特征指纹&新增加密协议&过后门查杀&过流量识别
笔记·学习·安全·魔改冰蝎·免杀对抗·免杀技术
落羽的落羽36 分钟前
【C++】现代C++的新特性constexpr,及其在C++14、C++17、C++20中的进化
linux·c++·人工智能·学习·机器学习·c++20·c++40周年
小苏兮1 小时前
【把Linux“聊”明白】编译器gcc/g++与调试器gdb/cgdb:从编译原理到高效调试
java·linux·运维·学习·1024程序员节
im_AMBER1 小时前
React 11 登录页项目框架搭建
前端·学习·react.js·前端框架
py有趣8 小时前
LeetCode算法学习之两数之和 II - 输入有序数组
学习·算法·leetcode
BreezeJuvenile9 小时前
外设模块学习(15)——MQ-2烟雾气体传感器(STM32)
stm32·单片机·学习·mq-2·烟雾气体传感器
XH1.11 小时前
学习RT-thread(RT-thread定时器)
stm32·单片机·学习
2301_7965125212 小时前
Rust编程学习 - 为什么说Cow 代表的是Copy-On-Write, 即“写时复制技术”,它是一种高效的 资源管理手段
java·学习·rust
故里213012 小时前
学习前端记录(二)21-40
学习
ThreeYear_s12 小时前
电力电子技术学习路径与FPGA/DSP技术结合方向(gemini生成)
学习·fpga开发