Postman+Newman+Jenkins 接口自动化测试持续集成

本文介绍了如何利用Postman进行接口自动化测试,包括变量管理、批量运行测试用例和断言功能。此外,还展示了如何通过Newman进行测试脚本导出和生成测试报告,以及如何在Jenkins上配置pipeline实现持续集成,包括定时任务、环境设置和构建后操作。

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

今天得知postman将彻底变成一个基于云端的工具,涉及到安全原因以后大概率不能在项目中使用了,所以今天把很久以前总结的接口自动化流程发出来。虽然postman不再使用,但持续集成自动化的基本逻辑和原理还是不变的,变得只是一个工具。

引入

  • 什么是接口?
    接口是软件提供给外部的一种服务,用于做数据传输。
  • 接口测试的本质?
    就是测试接口能否正常的交互数据、控制管理。
  • 接口测试的重点
    正确接受合法request入参,正确拒绝非法request入参,保证接口的正确性和健壮性。

在接下来的接口自动化中,我们使用Postman这个非常流行的工具,下面是Postman的UI操作界面:
在这里插入图片描述

Postman应用

变量

  • 全局变量对postman所有接口都生效
  • 环境变量只有设置为该环境下,才生效
  • 集合变量在collection中生效
  • 优先级:环境变量>集合变量>全局变量

使用pm.environment.set(“variable_key”, “variable_value”);、pm.environment.get(“variable_key”);来get/set环境变量
在这里插入图片描述

批量运行测试用例

在这里插入图片描述
在这里插入图片描述

断言

assertion code
断言返回结果的响应码 pm.test(“Status code is 200”,function(){pm.response.to.have.status(200); });
断言返回结果包含一个指定的字符串 pm.test(“Body matches string”, function () {pm.expect(pm.response.text()).to.include(“tags”);});
对返回的结果作json字段检查 pm.test(“Your test name”, function () {var jsonData = pm.response.json();pm.expect(jsonData.tags[1].id).to.eql(5298);});
断言返回的结果等于一个字符串 pm.test(“Body is correct”, function () {pm.response.to.have.bod(“response_body_string”);});
断言响应头中包含指定的响应头 pm.test(“Content-Type is present”, function () {pm.response.to.have.header(“Content-Type”);});
断言请求接口的时间少于200ms</
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值