当前位置: 首页 > backend >正文

Postman 的 Jenkins 管理 - 自动构建

目录

一、环境准备

创建 Postman 集合和环境

二、postman Postman 集合和环境并导出

1. 打开已完成并测试无误的 postman 项目脚本。 再次执行测试。 

​编辑​2. 导出( 测试用例集、环境变量 两个文件)**“不 支 持 中 文”** —— 全部改成英文!

​编辑​3. 文件所在目录地址栏 输入 cmd 打开终端。注意:用 “绝对路径” 测试。方便使用 Jenkins。

​编辑​4. 执行无误, 查看生成的测试报告文件# extra版报告模板

三、使用Jenkins管理-自动构建

1. 打开 Jenkins 首页,点击 “新建Item” 创建一个 新任务

2. 输入任务名,如:ihrm_postman,见名知意就OK。选择 “Freestyle project”,点 “确定” 。跳至 “配置”页面。

3. 回主页,可看到 ,多出任务ihrm_postman。 点 任务名称,“配置” 可以继续刚才的配置。

4. 跳至 “构建” 标签。(General 、源码管理、构建触发器、构建环境  四个标签先跳过)

    (1)点击 “增加构建步骤”,选择 “Execute Windows batch command” 选项(macOS选择 “Execute shell” )

​编辑​  (2) 将 cmd 终端 测试无误的 命令, 粘入“命令” 编辑框中(如有红色浪线警告,忽略)。

5. 构建后操作” 标签。

(1)点击 “增加构建后操作步骤”,选择 “Pulish HTML reports”,点击 “新增” 按钮。

    (2)将 Index page[s] 后的值改为:“report.html” 。名称 应与上面 命令中 生成的 测试报告名称 一致。

6. 点击 “应用” --> “保存”。

7. Jenkins 首页,点击任务名:如: bjtestAPITestIHRMPostman。跳至 “配置” 页面。

​编辑8. 点击“构建触发器” 标签。选择 “Build periodically(定期地)”

​编辑9. “日程表”中写入:*空格* * * *(空格隔分) —> 分别对应 “分 时 日 月 年”    - 修改:10 16  就是 每天的 16 点 10 分 执行。 

​编辑10. 点击 “应用” --> “保存”。 等待 。。。自动构建 —— 成功!

​编辑11. 报告样式错乱 原因:

12. 常见问题及解决方案

四、总结与展望

        在当今的软件开发领域,自动化测试和持续集成成为了提高开发效率和软件质量的关键。Postman 作为一款流行的 API 测试工具,结合 Jenkins 这一强大的持续集成工具,能够实现高效的自动化测试流程。本文将详细介绍如何利用 Postman 和 Jenkins 进行自动构建,实现接口自动化测试的持续集成。

一、环境准备

  • 安装 Jenkins :前往 Jenkins 官网Jenkins 的安装和设置下载安装包,根据操作系统的不同选择相应的安装方式,并按照安装向导进行安装。安装完成后,启动 Jenkins 服务。

  • 安装 Postman :从 Postman 官网下载并安装最新版本的 Postman 应用程序。

  • 安装 Newman :Newman 是一个命令行工具,能够运行 Postman 集合,便于在 Jenkins 中执行自动化测试。通过 npm 安装 Newman,命令为 npm install -g newman

  • 安装必要的 Jenkins 插件 :在 Jenkins 的 “系统管理”->“插件管理”->“可用” 中搜索并安装 “Postman”、“HTML Publisher Plugin”、“Email Extension Plugin” 等插件,以便后续能够更好地展示测试报告和发送邮件通知。

创建 Postman 集合和环境

  • 创建集合 :在 Postman 中,根据你的测试需求创建一个新的集合,将相关的 API 请求添加到该集合中,并对每个请求进行详细的配置,包括请求方法、URL、请求头、请求体等参数。

  • 创建环境 :为了使测试更加灵活,可以为集合创建对应的环境,设置环境变量,如 API 的基础 URL、认证信息等,方便在不同环境(如开发环境、测试环境、生产环境)下进行测试切换。

二、postman Postman 集合和环境并导出

  • 创建集合 :在 Postman 中,根据你的测试需求创建一个新的集合,将相关的 API 请求添加到该集合中,并对每个请求进行详细的配置,包括请求方法、URL、请求头、请求体等参数。

  • 创建环境 :为了使测试更加灵活,可以为集合创建对应的环境,设置环境变量,如 API 的基础 URL、认证信息等,方便在不同环境(如开发环境、测试环境、生产环境)下进行测试切换。

1. 打开已完成并测试无误的 postman 项目脚本。 再次执行测试。 

全部测试通过


2. 导出( 测试用例集、环境变量 两个文件)**“不 支 持 中 文”** —— 全部改成英文!

千万不要放在中文目录下面

导出环境变量


3. 文件所在目录地址栏 输入 cmd 打开终端。注意:用 “绝对路径” 测试。方便使用 Jenkins。


4. 执行无误, 查看生成的测试报告文件
# extra版报告模板

newman run 测试用例集名.json -e 环境变量文件.json -d 数据文件.json -r htmlextra --reporter-htmlextra-export 报告名称.html

# 示例:

newman run "D:\SoftwareTesting\testExport\ihrm.postman_collection.json" -e "D:\SoftwareTesting\testExport\postman_environment.json" -r htmlextra --reporter-htmlextra-export report.html

执行

生成报告

三、使用Jenkins管理-自动构建

简单来说:自动构建,就是设置一个定时器,定时时间到, Jenkins 自动执行测试用例。

 操作步骤:

1. 打开 Jenkins 首页,点击 “新建Item” 创建一个 新任务

2. 输入任务名,如:ihrm_postman,见名知意就OK。选择 “Freestyle project”,点 “确定” 。跳至 “配置”页面。

3. 回主页,可看到 ,多出任务ihrm_postman。 点 任务名称,“配置” 可以继续刚才的配置。

4. 跳至 “构建” 标签。(General 、源码管理、构建触发器、构建环境  四个标签先跳过)

    (1)点击 “增加构建步骤”,选择 “Execute Windows batch command” 选项(macOS选择 “Execute shell” )


  (2) 将 cmd 终端 测试无误的 命令, 粘入“命令” 编辑框中(如有红色浪线警告,忽略)。

5. 构建后操作” 标签。

(1)点击 “增加构建后操作步骤”,选择 “Pulish HTML reports”,点击 “新增” 按钮。

    (2)将 Index page[s] 后的值改为:“report.html” 。名称 应与上面 命令中 生成的 测试报告名称 一致。

        > 说明:
        > 因为生成报告时,没有指定目录。 所以:上面 “HTML directory to archive” 是空的。
        > 如果,指定报告生成到其他位置。 要配置 “HTML directory to archive”的值。

    (3)Report title 是生成的报告 标题,可修改为 “Report999” 试试看。 

6. 点击 “应用” --> “保存”。

7. Jenkins 首页,点击任务名:如: bjtestAPITestIHRMPostman。跳至 “配置” 页面。


8. 点击“构建触发器” 标签。选择 “Build periodically(定期地)”


9. “日程表”中写入:*空格* * * *(空格隔分) —> 分别对应 “分 时 日 月 年”
    - 修改:10 16  就是 每天的 16 点 10 分 执行。 


10. 点击 “应用” --> “保存”。 等待 。。。自动构建 —— 成功!


11. 报告样式错乱 原因:


    - Jenkins为了避免受到恶意攻击,设置了CSP安全策略。只允许加载 Jenkins服务器上托管的 CSS文件 和 图片文件。
    - 我们的用例、代码都是放在自己的服务器上,被恶意攻击的可能性极低。

12. 常见问题及解决方案

  • 报告样式错乱 :这是由于 Jenkins 的 CSP 安全策略限制了外部 CSS 和 JS 的加载。可以通过在 Jenkins 启动命令中添加参数 -Dhudson.model.DirectoryBrowserSupport.CSP="" 来解决,或者使用 Groovy 脚本等其他方法配置 CSP 策略,以允许测试报告中的样式文件正常加载。

 (1)在 启动时,添加参数 :

java -Dhudson.model.DirectoryBrowserSupport.CSP= -jar Jenkins.war

   (2)如果,已生成的报告,样式依然错乱, 重新 “Build Now” 生成新的报告即可。

  • 邮件发送失败 :如果邮件通知功能无法正常使用,首先要检查邮件服务器配置是否正确,包括 SMTP 服务器地址、端口号、用户名和密码等信息。同时,要确保网络环境能够正常连接到邮件服务器,并且邮件发送功能没有被防火墙等安全设置所阻止。此外,还可以查看 Jenkins 的日志文件,获取更详细的错误信息,以便进行问题排查和解决。

四、总结与展望

        通过上述步骤,实现了利用 Postman 和 Jenkins 进行自动构建,搭建起了一套高效的接口自动化测试持续集成环境。这一过程不仅提高了测试的效率和准确性,还能够及时发现接口中的问题,加速开发团队的交付周期。然而,在实际应用中,我们还可以根据项目需求进一步扩展和优化这一自动化测试框架,例如集成更多的测试工具和平台、实现更复杂的测试场景和数据驱动测试等,以不断提升软件开发的质量和效率。

http://www.xdnf.cn/news/14586.html

相关文章:

  • Redis 持久化机制详解:RDB、AOF 原理与面试最佳实践(AOF篇)
  • 1 Studying《Performance Analysis and Tuning on Modern CPUs》1-6
  • 语音情感识别:CNN-LSTM 和注意力增强 CNN-LSTM 模型的比较分析
  • godot2D的经典小游戏demo
  • Kafka存储设计深度剖析:日志、索引与文件管理的底层奥秘
  • 微信小程序canvas实现抽奖动画
  • 【深度学习】条件随机场(CRF)深度解析:原理、应用与前沿
  • JS红宝书笔记 8.3 继承
  • 额度互动促进金融健康,蚂蚁消金创新智能实时交互式风控系统
  • 门锁开关;与我们生活中紧密联系!
  • IntersectionObserver API应用场景示例代码详解
  • b站视频如何下载到电脑上
  • Linux驱动学习day5
  • Linux系统移植⑨:uboot启动流程详解-bootz启动Linux过程
  • 如何在 MX Linux 上安装 Mint 的 Cinnamon 桌面 UI
  • C语言——枚举
  • STM32 GPIO 寄存器开发
  • Vue 二维码组件
  • 力扣-416.分割等和子集
  • shelve模块的使用
  • 数据结构--栈和队列
  • Cobbler批量安装流程及具体配置步骤
  • 鸿蒙开发:基于最新API,如何实现组件化运行
  • 如何用K8s+Istio进行云原生开发?
  • mysql8 sql脚本转mysql5.7
  • 【网工】华为配置专题进阶篇①
  • C/C++中的位域(Bit-field)是什么?
  • 【6G技术探索】MCP协议整理分享
  • 黑马python(七)
  • Java 常用类 Time API:现代时间处理的艺术