POSTMAN

workspaces工作空间

collections集合--添加request请求

1.设置请求的方法以及请求URL

2.(1)params--get请求的传参

(2)Body

post请求传参

none无参数

form-data可以支持键值对的传参,也可以支持文件传参

x-www-form-urlencoded只支持键值对传参

raw可以支持的参数类型格式为json、text、xml、html、javascript

binary把文件以二进制方式传参

(3)Headers设置请求头

(4)Pre-request-script请求之前的脚本设置

(5)Tests请求之后的断言

apis接口文档

environments环境

mock server虚拟服务器

history历史记录


环境变量及全局变量

使用场景:当接口中某些数据在多个接口中使用,这时候可以使用变量来进行管理,从而实现一次设置多次使用

环境变量:针对某个环境的参数设置变量,在发送请求过程中需要这些参数的值,只需要设置调用即可。

环境变量的作用范围:作用于当前环境

环境变量的调用:{{变量名}}

全局变量作用的范围:作用于所有的请求,包括了不同环境下的所有请求

全局变量的调用:{{变量名}}


关联接口测试

关联接口:上一个接口的返回值作为下一个接口的入参

关联接口实现方式:

1.json提取器

2.正则表达式提取

3.通过在Tests编辑常用函数/脚本(js脚本)

复制代码
console.log(responseBody);//通过json提取器实现提取返回值中的部分值
var result = JSON.parse(responseBody);
var access_token=result.access_token;
console.log(access_token);
//把提取的access_token的值存储成一个变量,给关联接口进行调用
pm.globals.set("access_token",access_token);

//通过正则式提取
var result=responseBody.match(new RegExp('"access_token":"(.*?)","expires_in"'));
console.log(result);
var access_token_zz=result[1];
console.log(access_token_zz);
//实则把token设置成一个环境变量
pm.globals.set("access_token_zz",access_token_zz)

动态参数

常用的动态参数(系统参数)

{{$timestamp}}生成当前时间的时间戳

{{$randomint}}生成0-100之间的随机数

{{$guid}}生成一串GUID唯一的字符串

自定义参数

通过javascript设置。

复制代码
//设置自定义变量
var times=Data.now();
pm.globals.set("times",times);

自定义变量的调用{{变量名称}}


断言

通过javascript脚本实现断言。在Tests写

常用函数

status code is 200 响应的状态是否为200

Response body:contains string 检查响应的结果中是否包含字符串

Response body:JSON value check 判断检查响应的返回的json数据某个键的值

Response body:is equal to a string 检查响应的结果是否等于一个字符串

Response headers: Content-type header check 判断响应头中是否包含Content-type响应头

Response time is less than 200 ms 响应时间低于200毫秒

断言获取自定义变量方式

1.pm.globals.get("变量名称")

2.globals.times

3.globals["times"]


参数化设置

作用:对同一个用例设置多组数据来进行测试

测试数据文件类型:csv,json

接口参数化设置:

1.设置好接口的测试数据,注意测试数据必须列的先后顺序赋值,值与值之间使用逗号隔开

2.修改被循环执行的接口,有哪些数据需要调用数据文件中的数据,就需要进行对应的修改并保存

3.通过Runner选择循环执行的接口,选择对应的数据文件去运行

4.查看执行结果并分析

注意:

javascript脚本如何获取数据文件中的某个列数据---data.数据文件某个列的列名

接口设置中如何获取数据文件中的某个列的数据---{{数据文件某个列的列名}}


额外补充

  1. Cookie(客户端存储机制)
  • 是什么:服务器下发的一小段文本(≤4KB),保存在用户浏览器中。

  • 怎么工作 :浏览器会自动在后续同域请求的 Cookie 头中带上它。

  • 能干嘛

    • Session ID(最常见)

    • 记住语言偏好、主题等用户设置

    • 跟踪广告/行为(第三方 Cookie)

  • 特点 :只是载体,本身没有"鉴权逻辑",可被 JS 读取(除非设 HttpOnly)。

  1. Session(服务端状态管理)
  • 是什么:服务器为每个用户开辟的一块内存/数据库/Redis 空间,存放用户登录状态、权限等数据。

  • 怎么工作

    1. 用户登录成功 → 服务器生成 Session 数据 + 唯一 Session ID

    2. 通过 Set-Cookie 把 Session ID 发给浏览器

    3. 后续请求浏览器自动带 Session ID → 服务器查对应 Session 数据

  • 能干嘛:传统 Web 项目维持登录状态、购物车、权限校验。

  • 特点:有状态。服务器必须存数据,集群部署时需共享存储(如 Redis)。

  1. Token(自包含凭证,常指 JWT)
  • 是什么 :一段经过签名的字符串(如 eyJhbGciOiJIUzI1NiIs...),通常包含用户ID、过期时间、权限等。

  • 怎么工作

    1. 登录成功 → 服务器用密钥签名生成 Token

    2. 返回给前端 → 前端存 localStorage / sessionStorage / Cookie

    3. 后续请求手动放在 Authorization: Bearer <token> 头中

    4. 服务器只需验证签名有效性,不查库、不存状态

  • 能干嘛:前后端分离、移动端、微服务、跨域鉴权。

  • 特点:无状态。天然支持分布式,但泄露后无法主动作废(需配合短期+刷新机制)。

4.cookie鉴权原理:当客户端第一次访问服务器,是在服务器生成cookie信息,把cookie信息放到响应头set-cookie,把cookie信息发送到客户端,保存在客户端;客户端第二次访问服务器的时候,客户端会在请求头上带上cookie信息,实现cookie鉴权。

5.cookie分类

(1)会话cookie:保存在内存,当浏览器关闭之后会自动化清除

(2)持久cookie:保存在硬盘,浏览器关闭不会被消除,只要当失效时间到了才会被清除

6.mock测试使用场景:后端的接口还没开发完成,前端的业务需要调用后端的接口,可以通过mock server创建模拟的接口

7.加密

复制代码
//对用户名原字符进行MD5加密
var username=CryptoJS.MD5("admin").toString();
//对密码原字符进行MD5加密
var username=CryptoJS.MD5("123").toString();
console.log(username);
console.log(passwd);
pm.globals.set("username",username);
pm.globals.set("passwd",passwd);

//通过js脚本对原字符进行base64位进行加密
//对原字符指定utf8进行编码
var username=CryptoJS.enc.parse("admin");
//对原字符进行base64位加密
var username_64=CryptoJS.enc.Base64.stringify (username);
//把通过base64加密的密文设置成全局变量
pm.globals.set("username_64_2",username_64);

8.生成自动化测试报告

dos命令:jmeter -n -t jmeter脚本 -l jmeter测试报告(.jtl文件)

比如:jmeter -n -t jmeter_220908.jmx -l results.jtl

相关推荐
实名上网宋凯宣3 小时前
postman怎么用?
测试工具·postman
Warren983 小时前
Windows本地部署n8n完整教程(基于Docker,新手友好)
运维·windows·python·测试工具·docker·容器·可用性测试
Lugas Luo4 小时前
车载录像存储性能模拟测试工具设计
linux·嵌入式硬件·测试工具
llilian_166 小时前
国产铷原子钟 铷频标挑选指南 铷原子频标 国产铷钟
大数据·网络·功能测试·单片机·嵌入式硬件·测试工具
kerryYG7 小时前
Charles抓取mumu模拟器应用接口(非adb方式)
测试工具
551只玄猫7 小时前
【计算机网络 实验报告1】Wireshark软件的使用
计算机网络·测试工具·wireshark·课程设计·实验报告
chushiyunen8 小时前
easypostman替代postman
测试工具
Hacker_Nightrain18 小时前
详解Selenium 和Playwright两大框架的不同之处
自动化测试·软件测试·selenium·测试工具·职场和发展
设计Z源18 小时前
AS SSD Benchmark 固态硬盘测试工具
测试工具·性能优化·硬件工程