1接口测试的必要条件

要先想进行接口测试,就必须掌握以下几个内容:
(1)请求地址
(2)请求协议
(3)请求方式
(4)请求头
(5)请求参数

ps:公司没有接口文档也并非完全没办法测试接口,仍然可以通过抓包工具获取,但要想测试接口,还是需要上述的必要条件。

2常见请求与传参

常见请求方式主要为GET请求与POST请求,常见的传参格式为请求体提交与表单提交

3接口演示

4接口collection集合讲解

collection集合在接口测试中显得尤为重要,最重要的功能就是集合请求,将个别请求进行分组处理,这些请求可以进一步组织成文件夹,创建集合的好处主要有以下几点:

统一化: 将对应的请求集合在一个文件夹下,以便统一化的执行、调用、修改等

文档 : 增删改查文件夹的内容,可以备注

测试套件: 将测试脚本附加到请求并构建集成测试套件

条件工作流程: 脚本可以在API请求之间传递数据,并构建反馈实际用例API的工作流。

点击Postman左侧的集合创建按钮(+号),则可进行集合创建:

我们可以通过右键新创建的合集进行名称修改,右键集合名 → Rename:

右键集合后我们可以新建下一个层级,点击Add Folder

我们可以在文件夹下新建一个请求,这样这个请求就隶属于这个合集下对应文件夹,右键文件夹或总合集,点击Add Request新建请求

可以直接在下图红框处修改名称,也可以直接右键重命名,方式与集合一致

通常而言接口地址为固定地址,修改的只需要是模块名称,但每次新建又会很麻烦,可以右击请求title,并选择Duplicate Tab 来复制一个请求,在复制的基础上进行修改,,需要提前将复制出的接口保存到文件夹下(复制是完全复制前一个请求接口所填写的信息)

复制完成后能看到名称也是一致的,并会有橘色提醒,即代表着未进行保存,快捷键ctrl+s可进行保存,也可以通过点击Save进行保存

5

接口collection集合执行

collection集合执行顾名思义是将集合下的所有请求统一执行,点击集合右侧的三个点,再次选择Run collection:

打开后会展示如下界面:(图中只有一个请求,举例子,目的是让大家清楚工具使用,真实测试时有多个请求即可)

►►►

设置变量

1collection集合变量设置

接口collection变量可以理解成集合专用变量,则在集合下可使用的全局变量,在对应的请求中调用对应变量,则可以使用全集合专用变量,当collection集合变量修改时,对应调用请求的变量也会一同修改,选择3个点,选择Edit打开界面:

ps:变量则是让接口与接口之间存在关联性的联系,例如注册某网站,那么注册与登录必定是使用同一个用户名进行登录,那么在用户名这里,两个变量则是相同变量,此时我们就可以使用collection集合变量进行设置并调用

选择Variables后进行一个变量的设置,设置完成后进入单个请求中进行调用

将原变量替换掉,使用两个花括号进行变量的调用,这里格外需要注意的是集合修改后务必需要保存,保存后才能够调用到变量,否则会默认当成保存前的数据

2全局变量设置

全局变量可针对集合、某个接口进行的变量设置,在任何情况下不受到特定环境因素的影响下,也同样可以使用全局变量,全局变量针对所有集合、接口生效,点击任意一个请求,在界面最右侧点击眼睛的图标:

点击后会展开一个下拉界面,Globals则是全局变量,点击该界面右侧的Add进行全局变量的设置:

点击Add后会打开Globals窗口,进行变量设置(特别需要了解的是集合中的变量名称不能与全局变量名称一致,要时刻注意,设置完成后在传参处调用即可,调用方式同collection集合调用):

3环境变量设置

环境变量是与集合类似,环境变量只能在特定的环境下使用,例如测试环境、正式环境等,在测试环境中的变量则不能用于正式环境,环境中的变量是独立的,查找的方式与全局变量方式一致,点击眼睛图标,找到环境变量后,点击Add,进入到界面后可以设置一个新的变量,最后进行调用,调用同collection集合方式:

这里设置了2个环境变量,分别是测试环境与正式环境,正式环境与测试环境的变量是独立的,使用方式仍然与集合变量的方式一样,使用两个花括号并填写变量名即可(下面的URL是演示使用,大家用自己的接口地址即可)

在右侧这里默认是No Environment,没有环境变量,我们自己设置好环境变量后,可以自主的选择环境,例如正式环境,而后修改对应的内容为环境变量即可

4Tests设置变量

通过Tests,将接口的返回结果取出后设置为对应的变量,后续的相关接口就可以通过变量值进行接口关联,图中的例子是取token值,取出后选择好对应的环境变量并点击send,在小“眼睛”处可以查看到对应的token信息:

5接口Tests断言

Tests属于Postman内置的强大断言功能,可以通过内置的脚本直接进行调用,不需要过多的学习JavaScript的内容,非常方便且对新手友好,常见Tests响应断言的几种方式:

1、Response body:Contains string (校验返回结果中是否包含某个字符串)

2、Response body:Is equal to a string (校验返回结果是否等于该字符串)

3、Response body:JSON value check (校验返回结果中某个字段值是否等于某个值)

4、Response header:Content-type header check(检查响应头是否包含某个值)

5、Response time is less than 200ms (检查响应时间是否少于200ms)

6、Status code:Code is 200(检查状态码是否为200)

我们也可以选择Tests后在右侧看到相关的说明,点击后会直接在Tests中生成内容,具体的用法,大家可以百度自行查询,这里有很多相关的Tests断言,不逐一讲解:

6接口参数化

在接口测试时,部分请求参数都是重复的,那么我们就可以使用接口参数化,接口参数化可以很大程度上减少重复工作时间,常用的接口参数化有三种方式:csv、txt、json文档参数化(本次以txt进行举例):

1、举例前需要一个必要的前置条件,接口参数化必须在集合中进行操作,故此我们需要先创建个集合并把相关接口放置集合中(上面有提到如何创建集合以及把接口放置对应集合下,这里省略图片~)

2、在本地可以创建个对应的txt文档,参数间隔使用英文逗号:

3、关闭txt文档上传txt,点击按钮后,选择对应的文本文档并点击打开按钮上传:

4、上传文档后选择txt文本格式,点击右侧的Preview可以进行预览,一切安排好后,点击Run即可(效果类似上面的集合执行结果,这里不在放图说明了,小伙伴们快自己尝试一下吧~):

7接口随机数

在日常的接口测试、自动化接口测试时会出现大量的重复参数,即对同一个不允许重复的参数进行传参时,可以确保参数内容不重复,最典型的例子就是注册,注册的手机号在第一次注册时为注册成功,如果第二次使用同一个手机号,势必会提示手机号已注册,在这类场景下,我们需要使用接口随机数以确保参数不重复,随机数主要有以下3个方式:

  {{$guid}}:添加一个v4风格GUID

{{$timestamp}}:将当前的时间戳,精确到秒、毫秒时,后面增加000即可(执行结果也是个随机数,这里就不放图撩~)

 {{$randomInt}}:随机整数,添加0到1000之间的随机整数

效果大同小异,输出的结果例如:“ename”:“CSDNmengxiaotian156”

8Monitor监视器

Monitor监视器是Postman内置的监控模块,作用类似于Jinkens,可以设置按照分钟、小时、周等单位进行监控且在接口出现错误的情况下可以设置邮件通知(最多支持5个),非常重要且强大的功能(用过的都说好,手动滑稽)

Monitor也必须要依赖集合运行,所以小伙伴们在测试的时候还需要有个集合,日常集合3个点,选择Monitor,然后:

注:上文内容不用于商业目的,如涉及知识产权问题,请权利人后台留言联系小檬,我们将立即处理。

本文来自CSDN,作者:萌笑天,已获得授权

【postman进阶之路】相关推荐

  1. 2023最新软件测试学习思维导图(从小白到大师进阶之路)

    如下是我工作之余熬夜整理的软件测试学习思维导图,通过回顾多年的从业经验,总结提炼出来的一些东西,希望能对大家有些帮助,特别是刚入门软件测试行业或将要加入软件测试行业的同学,可以认真看一下,可以作为参考 ...

  2. 一个java高级工程师的进阶之路【转】

    一个java高级工程师的进阶之路[转] 宏观方面 一. JAVA.要想成为JAVA(高级)工程师肯定要学习JAVA.一般的程序员或许只需知道一些JAVA的语法结构就可以应付了.但要成为JAVA(高级) ...

  3. python处理pdf实例_Python实战-从菜鸟到大牛的进阶之路pdf_Python教程

    资源名称:Python实战-从菜鸟到大牛的进阶之路 pdf 第1章 Python 处理 cassandra 升级后的回滚脚本 第 2 章 多套方案来提高 python web 框架的并发处理能力 第 ...

  4. 机器人建模中移动关节如何建立坐标系_机器人工程师进阶之路(八)指数积(PoE)建立机械臂模型及正运动...

    梁政:机器人工程师进阶之路(六)旋量法(上)​zhuanlan.zhihu.com 梁政:机器人工程师进阶之路(七)旋量法(下)​zhuanlan.zhihu.com 从上两篇我们可以了解到,利用旋量 ...

  5. Scala进阶之路-正则表达式案例

    Scala进阶之路-正则表达式案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 废话不多说,正则大家都很清楚,那在Scala如何使用正则了?我们直接上个案例,如下: 1 /* 2 ...

  6. Python 进阶之路 (九) 再立Flag, 社区最全的itertools深度解析(上)

    前言 大家好,今天想和大家分享一下我的itertools学习体验及心得,itertools是一个Python的自带库,内含多种非常实用的方法,我简单学习了一下,发现可以大大提升工作效率,在sf社区内没 ...

  7. 工程师进阶之路(二)

    转载自 量子恒道官方博客  地址:http://blog.linezing.com 工程师进阶之路 二 谈谈沟通能力--沟通的准则 如果一名工程师要成长为资深专家或者是架构师或者是技术管理者,沟通是必 ...

  8. Scala进阶之路-面向对象编程之类的成员详解

    Scala进阶之路-面向对象编程之类的成员详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Scala中的object对象及apply方法 1>.scala 单例对象 ...

  9. Python 进阶之路 (十二) 尾声即是开始

    Python进阶之路总结 大家好,我的<< Python进阶之路>>到这一期就到此为止了,和 <<Python 基础起步>>不同,在掌握了一些基础知识后 ...

最新文章

  1. 芯盾时代:致力于身份认证安全的领军者
  2. PTP NTP kernel 驱动讲解 (未完待续)
  3. tkinter项目实战_Python GUI项目实战(二)主窗体的界面设计与实现
  4. 哪里可以找到python的免费教程-哪里有免费的python3教程啊?最好是有例子的视频教学...
  5. 许式伟:毕业两年成为首席架构师,我的技术学习方法论
  6. sqlserver安装教程
  7. python判断字典,列表,元组为空的方法。
  8. spring cloud 调用接口间歇性返回http 500 - Internal Server Error的错误
  9. 如何用c#打开文件夹并选择文件夹内的一个文件 open folder and select file
  10. MyEclipse中使用Junit插件进行单元测试
  11. adb命令安装apk
  12. Smarty中文手册
  13. 爱普生R230打印机故障大全
  14. php 内存设置无效,内存位置访问无效_php提示 内存位置访问无效 解决方法总结...
  15. 备案修改域名服务器DNS,免备案域名的DNS改到dnspod教程详解
  16. Ingenuous Cubrency UVA 11137
  17. 学堂在线笔记——前端与后台的故事——SQL语言及其编程
  18. Bug解决-RuntimeError: Sizes of tensors must match except in dimension 2. Got 320 and 160 (The offendin
  19. rfid射频前端的主要组成部分有_RFID复习题目
  20. 深入分析一个经典的单片机供电电路

热门文章

  1. 【Unity3D插件】KGFMapSystem插件分享《快速制作小地图插件》
  2. shell怎么使用制表符_shell中vi替换特殊字符(制表符\t等)的方法
  3. 百度之星2017资格赛 1003 度度熊与邪恶大魔王 完全背包
  4. [MySQL数据库]-基础多表练习题---员工工资
  5. 孢子气囊 tkinter控制台
  6. 任正非演讲系列之——华为的冬天
  7. 第3关:包装类与字符串之间的转换
  8. 超导计算机国防科技大学,超导材料的性能与应用综述
  9. android 读取各分区大小,Android8 分区表变化和相关信息
  10. JavaScript、jQuery、HTML5、Node.js实例大全-读书笔记2