• 以命令行形式执行Postman脚本(使用Newman)


      

    一、背景

    ​ Postman的操作离不开客户端。但是在一些情况下可能无法使用客户端去进行脚本执行。比如在服务端进行接口测试。由此我们引入了Newman。Newman基于Node.js开发,它使您可以直接从命令行轻松运行和测试Postman测试集。它在构建时考虑了可扩展性,因此您可以轻松地将其与持续集成服务器集成并构建系统。

    二、Newman的安装

    ​ 因为Newman是基于Node.js开发的,所以我们需要确保我们的电脑拥有Node.js环境。

    1、Node.js

    键入CMD,检查电脑Node.js环境,确保node.js版本大于16,否则无法安装Newman

    shell

    node -v
    

    如没有node,请到node.js官方网站下载,根据对应系统下载相应的包即可,下载完成后,双击下载文件,根据提示,完成软件安装。

    ​编辑

    2、Newman

    进入CMD,使用node.js的npm来进行安装,-g的意思是全局安装Newman,这将允许用户从任何地方运行它。

    shell

    npm install -g newman
    

    检查newman是否安装完成

    shell

    newman -v
    

    显示版本号即安装成功

    三、脚本准备

    doc

    新建项目目录
    
    ├─newmanTest
    │  ├─env  # 存放环境变量文件
    │  ├─global  # 存放全局变量文件
    │  ├─reports  # 存放报告
    │  ├─scripts  # 存放脚本
    │  └─testdata  # 存放参数化文件
    
    当然也可以只新建一个文件夹放入全部项目文件
    

    进入Postman,右击需要导出的collection选择export导出脚本,将脚本存放于script下

    注意:

    • 导出的脚本不包括环境变量及全局变量,需要另外导出!
    • 脚本名称不能带有空格,带有空格的话Newman只会识别空格前内容,会找不到文件

    导出环境变量到env目录下

    ​编辑

    同理,如有全局变量也需要导出后存放在global,参数化文件放置于testdata下。

    四、Newman的执行

    ​ 具体的一些参数,我们在newman的帮助文档中看到。这里介绍一些比较常用的参数。

    帮助文档可以输入newman run -h或newman run --help查看

    1、run

    CMD进入项目文件夹下的script,输入命令

    shell

    newman run S9.postman_collection.json
    

    ​编辑

    当然还有一种方式,我们可以直接在run后面跟URL,例如

    shell

    newman run https://postman-echo.com/get?fool=bar1
    

    ​编辑

    2、变量的使用

    我们可以使用-e参数来制定环境变量文件的路径,使用-g来指定全局变量文件的路径,例如:

    shell

    newman run S9.postman_collection.json -e ../env/PRE_ENV.postman_environment.json -g ../global/workspace.postman_globals.json
    

    3、参数化文件

    当脚本存在参数化文件时,我们可以通过-d参数来指定参数化文件的路径

    shell

    newman run S9.postman_collection.json -d ../testdata/param.csv
    

    4、指定folder

    在有的collection中会分好多个folder存放,当不设置该项参数时,Newman会默认执行全部。而如果需要执行指定的folder,那么就可以用--folder来指定需要执行的folder。例如:

    shell

    newman run S9.postman_collection.json --folder 菜单
    

    五、生成报告

    1、生成简洁版html报告

    在第一次使用时,需要安装相关插件,同样是借助npm来安装

    shell

    npm install -g newman-reporter-html
    

    执行命令生成html报告,-r参数表示指定生成报告的类型

    shell

    newman run S9.postman_collection.json -e ../env/PRE_ENV.postman_environment.json --folder 菜单 -r html --reporter-html-export ../reports/test_file_01.html
    

    执行完成后可进入reports目录打开报告查看

    ​编辑

    2、生成加强版html测试报告和Json测试报告

    在第一次使用时,同样需要安装相关插件

    shell

    npm install -g newman-reporter-htmlextra
    

    执行命令生成报告

    shell

    newman run S9.postman_collection.json -e ../env/PRE_ENV.postman_environment.json --folder 菜单 -r htmlextra,json --reporter-htmlextra-export ../reports/test_file_02.html --reporter-json-export ../reports/test_file_02.json
    

    查看reports文件夹下的html文件并打开

    ​编辑


    如果你想学习自动化测试,那么下面这套视频应该会帮到你很多 

    如何逼自己1个月学完自动化测试,学完即就业,小白也能信手拈来,拿走不谢,允许白嫖....

    最后我这里给你们分享一下我所积累和整理的一些文档和学习资料,有需要直接领取就可以了

    以上内容,对于软件测试的朋友来说应该是最全面最完整的备战仓库了,为了更好地整理每个模块,我也参考了很多网上的优质博文和项目,力求不漏掉每一个知识点,很多朋友靠着这些内容进行复习,拿到了BATJ等大厂的offer,这个仓库也已经帮助了很多的软件测试的学习者,希望也能帮助到你。

  • 相关阅读:
    应用层mmap和驱动层mmap之间的联系
    【C语言】探索数据的存储(浮点型篇)
    Github 2024-04-22 开源项目日报Top10
    【LeetCode刷题(数据结构)】:二叉树的前序遍历
    【KMP】KMP算法的一些小理解&总结
    【LabView专题】在电脑上模拟出一对串口用来收发数据调试上位机(VSDP)
    打印请求头
    ESP8266智能家居(4)——开发APP基础篇
    strcpy的基本用法详解以及模拟实现strcpy
    Java版本+企业电子招投标系统源代码+支持二开+Spring cloud
  • 原文地址:https://blog.csdn.net/weixin_56331124/article/details/133756174