在開發APP接口的過程當中,通常接口寫完以後,後端開發都會模擬調用一下請求。在用Postman
以前,對於通常的get
請求我基本都會用瀏覽器來簡單模擬。而對於post
請求,我通常習慣寫代碼來調用。能夠用Java來模擬,固然用Python會更簡潔。咱們來看看這種方法存在哪些弊端?json
bejson
等平臺來提升數據的可讀性然而今天須要推薦一款模擬請求的利器——Postman
,看看它是如何優雅地解決上面的這三個問題的。後端
Collections
管理請求在Postman
中,請求能夠保存,也就相似於文件。而Collection
相似文件夾,能夠把同一個項目的請求放在一個Collection
裏方便管理和分享,Collection
裏面也能夠再建文件夾。瀏覽器
好比咱們請求的域名,開發、測試、生產環境確定都不同。包括一些請求參數,好比測試環境的用戶id和線上環境的用戶id,確定都是有差別的。這個就相似咱們在maven
中經過配置profile
打不一樣環境的發佈包。固然Postman
裏還提供了Globals
也就是所謂的全局變量,與環境無關。服務器
Postman在模擬請求方面強大且方便到使人髮指,這裏再說幾句吧:
能夠模擬各類Http方法,Post、Get、Put、Delete等
能夠添加各類Headers,不過一些Headers受到Chrome和XMLHttpRequest規範的限制,被屏蔽了,具體有以下:maven
好消息是,從Postman v0.9.6
版本開始,咱們可使用攔截器來發送這些受限的Headers
,也就是須要安裝postman interceptor
插件工具
安裝了postman interceptor
不只能夠發送Cookie
,而且可使用瀏覽器的Cookie
。這樣一來,咱們只要在Chrome
裏登錄了,那麼就能夠獲取各類只能登錄後才能訪問的請求結果了。這絕對是個實用的功能。post
安裝了postman interceptor
,還有一個好處!那就是能夠攔截Chrome
的請求,經過Chrome
的請求能夠自動被抓取到Postman
中。只須要在Chrome
中打開postman interceptor
的攔截功能,而且配置好攔截規則,默認是攔截全部請求,你也能夠根據本身的規則去攔截特定的請求。有了它就至關於替代了咱們去錄製請求,而後咱們就能夠作點什麼。。。測試
Postman
除了是一個牛逼的模擬請求的工具,它還包含了很強大的接口測試功能:插件
測試主要包括三部分,在發起請求以前運行的Pre-request
,在收到響應以後運行的Test
,和一次運行全部請求的Collection Runner
code
Pre-request
和Test
用的語言都是JavaScript
,經常使用的功能均可以經過右邊的Code Snippets
實現,點擊就能夠插入到代碼區域。
能夠看到Pre-request
裏經常使用的功能就兩種,環境變量的設置清除和全局變量的設置清除
和Pre-request
相比,Test
的Snippets
就豐富多了,例如檢查狀態碼、檢查響應串、驗證JSON、檢查header
、限制響應時間。
若是須要將服務器響應的數據保存下來,用在後面的請求裏,也須要在這一步作。
當編寫了不少測試以後,就可使用Collection Runner
來自動運行整個Collection
了,入口就在主界面最上面一行的Runner
。選好Collection
、Environment
,若是有須要還能夠載入JSON
和CSV
做爲數據源。點擊Start Test Run
,就能夠看到結果了。
這篇文章只是簡單的介紹了Postman
的一些優點,我只是做爲一個體驗者把我本身以爲好的地方推薦給你們,固然Postman
可能還有好多強大的功能我沒有用到的。後面的文章我將會分享一個實際的例子,來展現我如何用Postman
對最近開發的一個功能模塊的全部接口進行自動化測試。