Postman-CI集成Jenkins(3)
-
Postman-CI集成Jenkins(3)
- 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
- Jenkins集成
- 既然Newman支持命令行运行,那么集成Jenkins就很简单。在Jenkins的Job中添加command line,内容如下:
-
newman -c *.json.postman_collection --exitCode 1