你應該學會的Postman用法(2)-自動化測試

前言

之前的一篇文章《你應該學會的Postman用法》,主要介紹了postman的一些高級的用法,便於日常開發和調試使用,本文的基礎是對postman的基本使用以及一些高級用法有一定的了解,如對此不太了解的同學,建議移步:

IT米粉:你應該學會的Postman用法?

zhuanlan.zhihu.com圖標

背景

隨著公司微服務體系服務越來越多,業務增長越來越迅速,版本迭代越來越快,而且對系統的可用性要求越來越高,傳統的手工發布系統的方式已經完全無法滿足日常運維的需求了,自動化構建發布的需求越來越強烈,但是自動化發布有個基礎的環境,自動化測試,鑒於團隊規模不大,測試人員的能力參差不齊,自動化測試我們選擇了以開發測試一起搭建的方式,通過輕量級的工具postman進行自動化測試。

測試文件共享

postman可以將測試的介面進行collections分組,分組後的一組介面可以進行導出,如圖:

導出後的文件,可以作為測試腳本共享,使用的人員只要導入,即可使用。

這樣,就可以在不同人員間,共享一個測試的文件。當然,如果能升級到高級版,可以直接通過不同的賬號在雲端共享測試文件,更加方便。

腳本測試

一直以來,我們都是介紹通過postman 的UI進行測試的,但是,實際做自動化測試的時候,我們更多是使用腳本,特別是在生產環境,通過腳本進行測試,就是必然了。postman為我提供了一個測試的工具——newman,基於node.js的一個腳本測試工具。

安裝

先安裝node.js,這裡不贅述了,開發人員必備工具。

在安裝newman:

npm install -g newman

初步使用

記得前面介紹的,我們導出的測試文件吧,那個文件除了分享給別人,也是我們用來測試的文件。

newman run 11.json

11.json 就是我剛才導出的文件,使用腳本文件類型必須是json。 這時候看看我們測試發生了什麼?

貌似,失敗了。提示我們循環,執行了一次,6個請求,但是全面部失敗了。看到錯誤的信息發現URI不正確,因為我用到postman了環境變數,但是導出的結果里沒有環境變數。這時候我們需要調整一下執行的腳本。

newman run 11.json -e url.json

url.json 實際是我們需要當前執行的環境變數,文件從就是如圖方式導出的:

導出後,我們也是將文件命名為json類型的文件。這樣我看下我們執行的結果。

全部執行成功了。就是這麼簡單。一個命令配上我們開發時候就需要用到的測試文件,就可以了,無需另外的測試腳本,用一個shell腳本即可完成結果的測試。

參數詳解

newman是個非常輕量級的命令,參數很少,這裡我們列出常用的幾個參數:

參數詳細說明-e環境變數(environment)文件路徑或者url,json文件-g全部配置(Global)文件路徑或url,json文件-d測試數據文件路徑,cvs文件-n循環測試次數--delay-request延遲執行時間--timeout-request請求超時時間--bail其中一個介面失敗後,是否繼續執行

總結

這樣一個非常輕量級的自動化測試腳本就做好了,當然,這是我們做自動化構建發布一個前提,postman的優勢是將日常開發中需要用的測試工具做成通過shell就能執行的工具,比專門花時間了編寫soapui這樣的腳本來說,更加輕量級,更加友好,當集成了shell的相關功能後,對於開發人員來說,可擴展性就變得非常容易了,後面的文章我將會介紹如何結合postman,再整合其他構建發布工具,來對我們的微服務進行發布,真正做到了自動化的發布、測試,而且能做到不停機、不影響用戶使用情況下完成系統的發布。


推薦閱讀:

TAG:自動化測試 | 軟體測試 | 科技 |