postman+newman

本文介绍了Postman工具的使用,包括环境变量、单接口及上下游接口测试、断言、批量执行器Runner和JSON数据驱动。接着,详细讲解了Newman的简介、安装、接口导出及执行命令,探讨其作为Postman命令行工具在自动化测试中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、postman工具

1.1、工具介绍

postman是一个接口测试和HTTP请求的工具 (注册账号,数据保存到远端,更换机器,用账号可以找回之前的数据)

 

1.2、http协议

是超文本传输协议,属于“应用层”协议,是万维网(www,即:world-wide web的缩写)进行数据通信的基础

GET (get): 对应数据库中的select语句

POST (post): 对应数据库中的insert语句

1.3、环境变量

需要在不同环境下跑相同的测试,利用设置环境变量动态选择

a.公共环境顾名思义就是所有的项目工程Collection都可以使用它

b.大多数情况下,使用公共环境,比较省时省力

c.默认的环境就是公共环境,显示“No Environment”

 

1.4、单接口测试 

 

 

1.5、上下游接口测试

接口与接口之间往往都有业务上的联系,比如:“登录”与“实名抽奖”,如果你不登录,无法抽奖,所以这个时候,我们称“登录”为上游接口,而“实名抽奖”为下游接口。一个上游接口往往可以为多个下游接口服务,一个下游接口也往往需要多个上游接口提供“前置服务”,上游接口很像我们写测试用例时前置条件。

这种上游接口把数据传递到下游接口的行为,我们叫做“数据传递”、“传参”等,使用人工的方式也可以实现“数据传递”,但是显然批量自动执行接口测试的时候,人工是无法介入的,所以我们需要利用到Postman的环境变量,提取接口响应内容里的参数(可以是响应头,也可以是响应体)。

上游接口:

(1) 提取接口服务返回的响应内容里的参数的值

(2) 把提取到的值赋值给一个自定义的变量名称

(3) 把自定义的变量名称传递给公共环境或指定的私有环境

下游接口:

(4) 在参数填写或者在写JSON字符串时,引用变量名称

// 第一步在登陆中获取token

var jsonData = JSON.parse(responseBody);

// 请求体中是否有C-Token 的数据,并将该值提取赋值到adminauth中

var adminauth = postman.getResponseHeader("C-Token")

// 将C-Token设置为环境变量(预置代码直接修改即可)

pm.globals.set("cookies", adminauth);

1.6、断言

1.6.1、断言服务器网络状态响应码

 

1.6.2、断言响应体headers信息

 

1.6.3、断言响应体body信息

 

1.7、接口测试批量执行器(Runner)

 

 

1.8、json数据驱动

2、Newman

2.1、Newman简介

newman是一款基于Node.js开发的可以运行postman的工具,使用Newman可以直接从命令行运行和测试postman集合。

为了快速发现问题,并减少重复过程以节省时间、费用和工作量,我们需要一套完整的持续集成解决方案,除接口开发之外其他环节全部自动完成,无需太多的人工干预。

2.2、Newman应用

2.2.1、环境准备

Node.js (下载地址:https://nodejs.org/en/)

node -v

npm -v 两个命令分别检查一下是否安装成功

 

2.2.2、配置好环境后,执行如下命令安装newman

npm install -g newman

2.2.3、输入如下命令检测安装是否成功

newman -v

2.3、接口导出json

 

 

2.4、执行

newman run '项目文件' -g '环境变量文件' -d '数据驱动文件'

newman run C:\Users\liwenli\Desktop\pmtest -g C:\Users\liwenli\Desktop\workspace.postman_globals.json

newman

2.5、运行命令

 

3、jenkins

### PostmanNewman配合Jenkins实现自动化测试并发送邮件通知 为了在PostmanNewman配合Jenkins实现自动化测试后成功发送邮件通知,以下是详细的说明: #### 安装必要的插件 在Jenkins环境中,需要安装`Email Extension Plugin`来支持自定义的邮件通知功能。该插件允许用户配置多种类型的邮件模板以及触发条件[^1]。 #### 配置SMTP服务器 进入Jenkins系统的全局配置页面 (`Manage Jenkins -> Configure System`) ,找到 `E-mail Notification` 部分,输入有效的 SMTP 服务器地址、端口号以及其他认证信息(如用户名和密码)。这些参数用于连接到外部邮箱服务提供商以便发送电子邮件[^2]。 #### 设置构建后的操作 在创建好的Jenkins Job中,在“Build”阶段之后添加一个新的步骤:“Editable Email Notification”。在此处可以指定接收者列表、主题行以及正文内容。如果希望动态生成部分内容,则可利用`${BUILD_STATUS}` 或 `${BUILD_URL}` 这样的变量替换机制[^3]。 另外还可以通过Groovy脚本来进一步定制HTML格式的消息体,从而更直观地展示测试结果摘要或失败详情链接等重要数据[^4]。 ```groovy def bodyContent = """ <html> <body> <h2>Test Execution Report</h2> <p><b>Status:</b> ${currentBuild.result}</p> <a href="${env.BUILD_URL}">View Full Results Here</a> </body> </html> """ return bodyContent ``` 以上代码片段展示了如何构造一封简单的HTML格式的通知信函,其中包含了当前构建状态及查看完整报告的超链接。 #### 测试验证流程 完成上述所有设置以后,请记得保存更改并对新建立的任务执行一次手动触发以确认整个链条工作正常无误。如果有任何异常情况发生,请依据日志提示排查相应环节直至问题彻底解决为止。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值