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

postman压力测试_如何用Postman做接口自动化测试?

前言

什么是自动化测试

  把人对软件的测试行为转化为由机器执行测试行为的一种实践。

  例如GUI自动化测试,模拟人去操作软件界面,把人从简单重复的劳动中解放出来。

  本质是用代码去测试另一段代码,属于一种软件开发工作,已经开发完成的用例还必须随着被测试对象的改变而更新,因此,还有额外的维护成本。

自动化测试有哪些分类

  按测试目的分类

  功能自动化测试

  性能自动化测试

  按测试对象分类

  Web应用测试

APP测试

接口测试

单元测试

为什么需要自动化测试

  可以替代大量的手工机械重复性操作,测试工程师可以把更多的时间花在用例设计和新功能的测试上

  可以大幅度提升回归测试的效率,非常适合敏捷开发过程

  可以更好地利用无人值守时间,去更频繁地执行测试

  可以高效实现某些手工测试无法完成或代价巨大的测试类型,例如:7*24小时持续运行的系统稳定性测试和高并发场景的压力测试

  可以保证每次执行的操作具有一致性和可重复性,不会受人的感情因素影响。

Postman自动化测试演示

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

1.新建集合

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

9107e809e344b81fcde7c64b7ab8adaa.png

 2.新建接口

  下面是我添加的

394fb1ec4567fd7185e0b64feac766fb.png

3.填写自动化测试脚本

  例如,我需要测试几点

  http状态码200

  返回的json的code码是0

  接口返回时间不小于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

  测试结果结果如下

2e523627a1eae7757658a4fb60310471.png

4.录入所有接口

  然后接下我要对所有的接口进行这样的测试,把这些接口都录入,如下

306eea589bbb99c406fe7840a4a8101e.png

 5.执行自动化测试

  点击集合的Run按钮

27a9e08bddfcf291d1266beaf0beaaa4.png

  弹出如下界面,可以填写相应的参数,这里我用默认的

475fecfb0062207a52a4e486cfd5f0bb.png

  点击Run,执行结果如下

0d078e116ea346544895fcb8b2135acd.png

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

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

相关文章:

  • 编程访问“我的网站”中的目标链接门户列表
  • 你觉得外观模式和代理模式的联系和区别是什么?_清华毕业大牛带你深入研磨并掌握23种设计模式,总计6.17G...
  • MOSS 2007基础:开发自定义WebPart
  • tp 扫码点餐 源码_外卖点餐扫码点餐系统开发案例
  • MOSS 2007基础:部署自定义WebPart
  • google网页有一个上传文件的按钮怎么用python里面用click不能实现_PyHubWeekly | 第七期:5款Python小工具,最后一款会给你惊喜...
  • AJAX如何用于Web部件
  • python分段线性插值_[Python] 分段线性插值
  • 装机遇到的问题
  • 声学测试软件手机版_来了,小米手机的2019黑科技总结
  • 在Sql Server 中调用Jmail组件发送邮件
  • python处理音频的软件_Python音频操作工具PyAudio上手教程!
  • 在本机运行vbs, 让远程计算机启动一个程序
  • 机器学习cnn数据集_Scikit-Learn&More,用于机器学习的综合数据集生成
  • 转:任正非寄语2010:开放、妥协与灰度
  • Angular6错误 Service: No provider for Renderer2
  • Bootstrap JS插件Alert源码分析
  • ECMAScript 6 学习之路 ( 四 ) String 字符串扩展
  • OpenStack安装流程(juno版)- 添加网络服务(neutron)- controller节点
  • Travix是如何部署应用程序到Kubernetes上的
  • Zsh 开发指南(第十四篇 文件读写)
  • 看完九篇字体系列的文章,你还觉得我是在说字体?
  • 你真的知道 == 和 equals 的区别吗?
  • 学习笔记TF060:图像语音结合,看图说话
  • 看到一个关于网页设计的文章分享过来!大家看看!
  • 阿里云移动端播放器高级功能介绍
  • ​​​【收录 Hello 算法】9.4 小结
  • ​比特币大跌的 2 个原因
  • ​猴子吃桃问题:每天都吃了前一天剩下的一半多一个。
  • ​油烟净化器电源安全,保障健康餐饮生活
  • (+4)2.2UML建模图
  • (C#)if (this == null)?你在逗我,this 怎么可能为 null!用 IL 编译和反编译看穿一切
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第5节(封闭类和Final方法)
  • (LeetCode 49)Anagrams
  • (ZT)北大教授朱青生给学生的一封信:大学,更是一个科学的保证
  • (超简单)构建高可用网络应用:使用Nginx进行负载均衡与健康检查
  • (剑指Offer)面试题41:和为s的连续正数序列
  • (六)Hibernate的二级缓存
  • (企业 / 公司项目)前端使用pingyin-pro将汉字转成拼音
  • (一)appium-desktop定位元素原理
  • (已解决)什么是vue导航守卫
  • (转)一些感悟
  • (转载)Linux 多线程条件变量同步
  • *上位机的定义
  • .bat批处理(二):%0 %1——给批处理脚本传递参数
  • .Net - 类的介绍
  • .net core使用ef 6
  • .NET Framework 3.5中序列化成JSON数据及JSON数据的反序列化,以及jQuery的调用JSON
  • .NET Micro Framework初体验
  • .NET MVC之AOP
  • .NET/C# 异常处理:写一个空的 try 块代码,而把重要代码写到 finally 中(Constrained Execution Regions)
  • .Net下C#针对Excel开发控件汇总(ClosedXML,EPPlus,NPOI)
  • .net中我喜欢的两种验证码
  • .vue文件怎么使用_vue调试工具vue-devtools的安装
  • /run/containerd/containerd.sock connect: connection refused