jenkins+postman+newman的持续集成

本文介绍如何使用Jenkins、Newman和Postman进行持续集成的自动化接口测试。首先,通过Postman编写并导出接口测试用例,然后利用Newman在Jenkins环境中运行这些测试,实现自动化构建和测试流程。

【原理】
搭建环境之前需要先理清楚各个环境的依赖关系,jenkins只支持windows命令行跟linux shell环境执行构建命令,而postman的测试脚本不能直接在命令行或shell环境执行,postman脚本需要有自己的执行环境,叫newman;而postman是基于javascript语言,所以newman环境还依赖于javascript的环境nodejs;所以整个过程是先搭建nodejs构造javascript环境,在搭建newman构造postman脚本运行环境,在集成到jenkins上;

通过postman编写接口测试的用例,最后将接口集导出,上传到git,再通过jenkins的配置,从git取导出的接口集json,trigger接口测试的job运行。我们可以跳过git的过程,导出的postman集合的文件直接通过newman运行的方式。

【环境准备】
1、node
node官网:https://nodejs.org/en/download/
在这里插入图片描述
我下载的是windows的64位msi文件,下载完成后双击运行,按默认安装步骤安装即可。
查看自己有没有安装node,运行cmd,输入node --version
在这里插入图片描述
2、newman

npm -g install newman

安装成功后查看newman版本号
在这里插入图片描述
【jenkins+postman+newman持续集成】
1、postman导出接口集,导出接口时建议重新命名
在这里插入图片描述
对于设置了环境变量的api,导json文件的同时,需要导出环境变量文件,否则api中的变量没有意义的。
在这里插入图片描述
2、newman运行导出的集合文件

newman run kshnew.postman_collection.json

可以看到newman运行接口的结果情况
在这里插入图片描述
3、jenkins集成
1)创建jenkins项目->构建中输入代码
2)构建内容中输入newman的运行命令,但是jenkins构建中的命令需要带newman的安装路径,否则会提示newman不是可执行命令。

C:\Users\lenovo\AppData\Roaming\npm\newman run kshnew.postman_collection.json

newman的默认安装路径是在C:\Users\lenovo\AppData\Roaming\npm
在这里插入图片描述
这是因为Jenkins的工作环境下与windows的默认环境有所区别,我们只需要配置一下Jenkins的环境变量即可

系统管理->管理节点->选择需要使用的主机->配置从节点

新建一个键值对列表,键名PATH,把npm和nodejs的路径放进来即可
在这里插入图片描述
3)编辑jenkins的触发器,可设置固定时间点自动执行;同时添加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、付费专栏及课程。

余额充值