1.安装Cmd工具,使命令敲起来更顺畅:cmdr(百度,一直下一步安装)


2.安装nodejs(百度,一直下一步安装,查看版本:node --version


3.安装cnpm(npm install -g cnpm --registry=https://registry.npm.taobao.org)


4.校验npm是否安装成功npm --version


5.安装newman: cnpm install newman --global


6.校验newman是否安装成功newman --version

 


然后导出collectionsenvironment文件

切到collectionsenvironment文件所在目录


在cmd命令中先切到(cd)脚本文件夹:

自动运行脚本,带环境参数并生成报告

newman -c test1.postman_collection.json -e test2.postman_environment.json -H html

 

自动运行脚本,不带环境参数并生成报告

newman -c test1.postman_collection.json -H html




-c:后面接的是完整的collection名称

-e:后面接的是完整的environment名称

-H:表示生成HTML格式的报告

 

Jenkins 结合

  平时做接口自动化,避免不了最后通过Jenkins做构建。既然Newman提供了控制台命令执行方式,那么像通过Jenkins来构建也就容易多了。
步骤一:在Jenkins 机器上安装Newman
步骤二:搭建Jenkins环境,并新建个自由风格的Job
步骤三:构建选择Execute Windows batch command,并输入newman 运行命令

命令行运行postman_第1张图片

步骤四:因为上面命令中构建会生成junit的xml报告,所以可以在构建后用Publish JUnit test result report 插件来生成测试报告。

命令行运行postman_第2张图片




其他参考资料:

Newman

  • 官方说明:Postman's command-line companion lets you do amazing things! With Newman, you can integrate Postman collections with your build system. Or you can run automated tests for your API through a cron job.

  • 概述:集成Postman的API测试命令行执行工具

  • 首页:https://www.npmjs.com/package/newman

  • 基于Node.js,可安装在Linux/Windows/Mac

  • 安装命令:

    npm install -g newman
  • 验证安装是否成功

  • newman -V

    出现版本号,则安装成功

  • 运行方式,执行Postman导出的Collection文件

  • newman -c *.json.postman_collection

Newman命令行操作

  • 执行指定的Collection文件

  • newman -c *.json.postman_collection
  • 执行指点定的Collection文件及Environment文件

  • newman -c *.json.postman_collection -e *.postman_environment
  • 执行保存到服务器上的Collection

  • newman -u https://www.getpostman.com/collections/cb208e7e64056f5294e5
  • 循环执行Collection文件5次

  • newman -u https://www.getpostman.com/collections/cb208e7e64056f5294e5 -n 5
  • 详细的newman命令用法

  • 复制代码

    复制代码

      Usage: newman [options]
    
      Options:
    
        -h, --help                      output usage information
        -V, --version                   output the version number
        -c, --collection [file]         Specify a Postman collection as a JSON [file]
        -u, --url [url]                 Specify a Postman collection as a [url]
        -f, --folder [folder-name]      Run a single folder from a collection. To be used with -c or -u
        -e, --environment [file]        Specify a Postman environment as a JSON [file]
        -E, --exportEnvironment [file]  Specify an output file to dump the Postman environment before exiting [file]
        -d, --data [file]               Specify a data file to use either json or csv
        -g, --global [file]             Specify a Postman globals file [file]
        -G, --exportGlobals [file]      Specify an output file to dump Globals before exiting [file]
        -y, --delay [number]            Specify a delay (in ms) between requests
        -r, --requestTimeout [number]   Specify a request timeout (in ms) for requests
        -R, --avoidRedirects            Prevents Newman from automatically following redirects
        -s, --stopOnError               Stops the runner with code=1 when a test case fails
        -j, --noSummary                 Doesn't show the summary for each iteration
        -n, --number [number]           Define the number of iterations to run
        -C, --noColor                   Disable colored output
        -k, --insecure                  Disable strict ssl
        -l, --tls                       Use TLSv1
        -N, --encoding [encoding-type]  Specify an encoding for the response. Supported values are ascii,utf8,utf16le,ucs2,base64,binary,hex
        -x, --exitCode                  Continue running tests even after a failure, but exit with code=1. Incompatible with --stopOnError
        -o, --outputFile [file]         Path to file where output should be written [file]
        -O, --outputFileVerbose [file]  Path to file where full request and responses should be logged [file]
        -t, --testReportFile [file]     Path to file where results should be written as JUnit XML [file]
        -i, --import [file]             Import a Postman backup file, and save collections, environments, and globals [file] (Incompatible with any option except pretty)
        -p, --pretty                    Enable pretty-print while saving imported collections, environments, and globals
        -H, --html [file]               Export a HTML report to a specified file [file]
        -W, --whiteScreen               Black text for white screen
        -L, --recurseLimit [limit]      Do not run recursive resolution more than [limit] times. Default = 10. Using 0 will prevent any varialbe resolution
    
      Newman is a command-line collection runner for Postman. You must specify a collection file or a collection URL to run newman
    
      A collection file or URL is mandatory
      Examples:
    
        newman -c POSTMAN_COLLECTION
        newman -u POSTMAN_COLLECTION -e POSTMAN_ENVIRONMENT
        newman -c POSTMAN_COLLECTION -f SAMPLE_FOLDER
    
      For more documentation, issues and examples head over to https://github.com/postmanlabs/newman