Postman + newman + jenkins 的API自動化測試應用


一、環境配置

 

Postman

postman 的具體使用可以參考另外一篇文章:postman 做接口測試之學習筆記

Newman

第一步,安裝nodejs。 
第二步,在nodejs命令行安裝newman,即命令行輸入如下命令:

npm install -g newman

jenkins

去官網(https://jenkins.io/index.html)下載jenkins

 

二、Postman + Newman + jenkins 的使用

 

1. 在postman中導出testcase 文件夾(即存各個接口的collection文件夾)和設置的環境變量文件。

如下所示,導出來的是個json 格式的文件

 

 

 

2. jenkins配置

注意:如果是安裝在本地的Jenkins,要將jenkins開啟,切換到jenkins.war 的路徑下, 執行 java -jar jenkins.war 則可以開啟了。

在jenkins上配置如下圖,這個路徑就是上面通過postman導出文件的路徑。 

 

剩下的就是jenkins的常規操作了,比如設置好郵箱后點擊立即構建或者設置多久構建一次,這樣自動化就跑起來了,等待自動化測試結束后我們就可以收到測試成功或者失敗的測試報告郵件了(依賴於設置)。

通過上面這些步驟即可完成基於postman和Jenkins的自動化接口測試。

 

Newman的使用:

可以參考:

Newman - Running collections in the command line

newman 官方文檔

newman github

 

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]
    --environment-url [url]         Specify a Postman environment as a URL
    -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 (Defaults to 15000 if not set)
    -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
    -S, --noTestSymbols             Disable symbols in test output and use PASS|FAIL instead
    -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 variable 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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM