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

Postman如何做接口自动化测试?

前言

什么是自动化测试

把人对软件的测试行为转化为由机器执行测试行为的一种实践。
例如GUI自动化测试,模拟人去操作软件界面,把人从简单重复的劳动中解放出来。
本质是用代码去测试另一段代码,属于一种软件开发工作,已经开发完成的用例还必须随着被测试对象的改变而更新,因此,还有额外的维护成本。

自动化测试有哪些分类

按测试目的分类

功能自动化测试
性能自动化测试
按测试对象分类

Web应用测试
APP测试
接口测试
单元测试

为什么需要自动化测试

1、可以替代大量的手工机械重复性操作,测试工程师可以把更多的时间花在用例设计和新功能的测试上
可以大幅度提升回归测试的效率,非常适合敏捷开发过程
2、可以更好地利用无人值守时间,去更频繁地执行测试
3、可以高效实现某些手工测试无法完成或代价巨大的测试类型,例如:7*24小时持续运行的系统稳定性测试和高并发场景的压力测试
4、可以保证每次执行的操作具有一致性和可重复性,不会受人的感情因素影响。

Postman自动化测试演示

postman大家都用得挺多的,使用方法就不介绍了,详情可以查看:官方文档

1.新建集合

就是为了给待测试接口统一分类一下用

在这里插入图片描述

2.新建接口

下面是我添加的
在这里插入图片描述

3.填写自动化测试脚本

例如,我需要测试几点

1、http状态码200
2、返回的json的code码是0
3、接口返回时间不小于1000毫秒,脚本如下

//查看httpCode码
tests["接口状态码200"] = responseCode.code === 200;
//判断请求时间
tests["返回时间小于1000毫秒"] = responseTime < 1000;
//返回body转json
var data = JSON.parse(responseBody);
//检查json数据
tests['code码必须为0']= data.code==0

 测试结果结果如下
在这里插入图片描述

4.录入所有接口

然后接下我要对所有的接口进行这样的测试,把这些接口都录入,如下
在这里插入图片描述

5.执行自动化测试

点击集合的Run按钮
在这里插入图片描述

弹出如下界面,可以填写相应的参数,这里我用默认的
在这里插入图片描述点击Run,执行结果如下
在这里插入图片描述

可以看到,我们测试了32个接口,其中25个通过,7个失败,有的是时间不满足要求,有的是状态码不对。

针对这个结果,我们可以自己去优化接口,就是这么简单,light weight baby!

此外,Postman还推出了命令行版本Newman,可以配合Jenkins做接口自动化测试和持续集成。

http://www.lryc.cn/news/135465.html

相关文章:

  • excel文本函数篇2
  • 【MyBatis】动态SQL > 重点:${...}和#{...}与resultMap和resultType的区别
  • 什么是BEM命名规范?为什么要使用BEM命名规范?
  • JavaScript:交集和差集的应用场景
  • 达梦数据库表空间创建和管理
  • 三、MySQL 数据库安装集
  • 【BASH】回顾与知识点梳理(三十九)
  • 蓝蓝设计-UI设计公司案例-HMI列车监控系统界面设计解决方案
  • Blazor前后端框架Known-V1.2.13
  • vue 复制文本
  • 西瓜书第三章
  • 关于python如何使用sqlalchemy连接sap_hana数据库
  • 微信小程序教学系列(5)
  • 【计算机网络篇】TCP协议
  • Disruptor并发编程框架
  • matlab 点云精配准(1)——point to point ICP(点到点的ICP)
  • 【JVM】运行时数据区域
  • uniapp踩坑合集
  • 再JAVA中如何使用qsort对类进行排序?
  • docker安装clickhouse
  • 解决`idea`中`database`工具查询起别名乱码问题
  • UE4/5Niagara粒子特效之Niagara_Particles官方案例:1.5->2.3
  • Docker 容器数据卷
  • STM32--MPU6050与I2C外设
  • 项目管理实战笔记1:项目管理常识
  • 时序分解 | MATLAB实现基于SVMD逐次变分模态分解的信号分解分量可视化
  • 阿里云访问端口被限制解决方法记录
  • antd5源码调试环境启动(MacOS)
  • 单片机使用基于时间片轮询系统的-状态机-[1]
  • 前端开发怎么解决性能优化的问题? - 易智编译EaseEditing