1.安裝Cmd工具,使命令敲起來更順暢:cmdr(百度,一直下一步安裝)html
2.安裝nodejs(百度,一直下一步安裝,查看版本:node --version)node
3.安裝cnpm(npm install -g cnpm --registry=https://registry.npm.taobao.org)git
4.校驗npm是否安裝成功:npm --versiongithub
5.安裝newman: cnpm install newman --globalnpm
6.校驗newman是否安裝成功:newman --versionjson
而後導出collections跟environment文件服務器
切到collections跟environment文件所在目錄ide
在cmd命令中先切到(cd)腳本文件夾:
工具
自動運行腳本,帶環境參數並生成報告post
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作構建。既然Newman提供了控制檯命令執行方式,那麼像經過Jenkins來構建也就容易多了。
步驟一:在Jenkins 機器上安裝Newman
步驟二:搭建Jenkins環境,並新建個自由風格的Job
步驟三:構建選擇Execute Windows batch command,並輸入newman 運行命令
步驟四:由於上面命令中構建會生成junit的xml報告,因此能夠在構建後用Publish JUnit test result report 插件來生成測試報告。
其餘參考資料:
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測試命令行執行工具
基於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