• Postman进阶功能


    Postman除了前面介绍的一些功能,还有其他一些小功能在日常接口测试或许用得上。今天,我们就来盘点一下,如下所示:

    1.数据驱动

    想要批量执行接口用例,我们一般会将对应的接口用例放在同一个Collection中,然后再通过Runner批量执行。这种方式适用于接口用例参数固定的情况下,但也存在另一个问题,如果每次运行时,接口参数都在变化,该如何操作呢?

    认真看过前面文章的童鞋可能已经猜到,将变量参数化就可以了。但这种方式,存在也存在另外一个问题,就是需要每次将参数提前设置好,比如在Pre-request Script中设置如下:

    pm.environment.set("username","Surpass")
    pm.environment.set("password","Surpass")
    
    • 1
    • 2

    使用Pre-request Script设置环境变量并进行赋值不论运行多少次,其实还是用固定的的数据进行测试。

    既然以上两种方式都不能解决我们的问题,那将数据写到文件中,然后从文件中读取是不是可以?在Postman中其实也提供了这种方式。

    这种用于存放测试数据的文件,一般称之为测试数据集

    在Postman中测试数据集支持两种格式csv和json

    csv格式

    在这里插入图片描述

    json格式

    在这里插入图片描述

    数据格式类似于表格,第一行对应变量名,后面数据对应相应的测试数据

    下面来看看操作步骤:

    1、打开Run Collection界面,填写运行次数、导入测试数据集,最后点击Run Collection

    图片

    2、运行结果如下所示:

    图片

    2.定期任务

    Postman提供了一个Monitor功能,支持提交具有定时功能的测试任务,可以按设置的定时器执行接口用例,操作如下所示:

    图片

    3.接口依赖

    接口依赖就是在执行一个接口时,其数据会依赖于其他接口,其本质上是一个接口数据传递的问题。例如:比如在删除用户时,必须要求携带相应的token,而token则是在用户登录后才会产生。

    3.1 接口执行顺序

    1.默认执行顺序

    在Postman中默认的执行顺序,是按照在Collection中的目录顺序执行,即从上到下依次执行。

    图片

    2.自定义执行顺序

    如果按默认的目录顺序执行,通常无法满足其业务需求,好在Postman提供了一个函数 postman.setNextRequest(“你要跳转的接口名”),支持跳转到指定接口执行。例如:在执行完接口用户查询后,跳过接口用户新增,直接跳转执行修改密码,示例如下所示:

    • 1、在用户查询接口Tests中添加如下代码:

    在这里插入图片描述

    • 2、在修改密码接口中Tests中添加如下所示:

    在这里插入图片描述

    • 3、查看运行结果如下所示:

    图片

    在使用自定义接口执行顺序时,需要注意以下几点:

    postman.setNextRequest()仅在运行集合测试时生效,即在Run Collection时才生效,单独运行接口时不生效

    postman.setNextRequest()在运行时,在跳转时会忽略跳转时中间包含的接口,跳转后的接口如果仍然有接口则继续运行后续接口,即如果有接口A/B/C/D/E/F,如果设置的跳转条件为A->D,则最终执行的接口顺序为A->D->E->F,B和C接口被忽略

    跳转指定的接口必须位于同一个Collection内

    postman.setNextRequest()函数不管在Tests脚本中何处被调用,它都只在当前脚本最后才被真正执行。

    现在我邀请你进入我们的软件测试学习交流群:746506216】,备注“入群”, 大家可以一起探讨交流软件测试,共同学习软件测试技术、面试等软件测试方方面面,还会有免费直播课,收获更多测试技巧,我们一起进阶Python自动化测试/测试开发,走向高薪之路。

    喜欢软件测试的小伙伴们,如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一 键三连哦!

  • 相关阅读:
    100天精通Oracle-实战系列(第21天)Oracle 数据泵常用参数和命令
    计算机网络:网络层 - IP数据报的转发
    RocketMQ源码分析(十三)之ConsumeQueue
    hbase2.5 新特性
    Vue 全组件 局部组件
    【Java核心技术12】面向对象编程(OOP):深入理解类与对象
    小飞学习Docker之初识Docker
    使用 Spring Cloud Loadbalancer 实现客户端负载均衡
    IE URL传参问题
    CodeForces Round #829 (div.2) A~C2
  • 原文地址:https://blog.csdn.net/wx17343624830/article/details/125892251