HTTP API接口測試實踐,如何使用Postman工具進行接口測試?

一、什麼是API接口測試?

API接口有多種,個人將其劃分為三類。

第一種是函數級別的,測試需要對接口的各個參數進行測試,如:

Int getResult(String key, String ID, Int ticket)。

第二種是對象級別的,開發在使用API接口時,先引入包名,在使用之前聲明一個對象,之後可以使用對象提供的方法,而測試時,需要測試的是API的功能及對數據輸入的正確性。第二種和第一種的差別是,我們只需關注提供給用戶使用的接口就可以了,不用關心接口調用其他函數情況,相對於第一種來說,測試的粒度要大一些,範圍小一些。

第三種是http協議的接口,App客戶端和後端服務連接,一般採用的都是http協議,客戶端通過get和post的方法從後端服務獲取數據。第三種相對於第二種來說,粒度更大,我們關注的接口更少,但是這些接口都是核心功能。

HTTP API接口測試實踐,如何使用Postman工具進行接口測試?

二、為什麼要測試API接口?

App後端服務,在出現功能異常時,或者吐出異常數據時,可能會導致客戶端功能異常,甚至出現崩潰的現象。而客戶端由於數據的問題而崩潰,如果容錯不到位,可能導致App永遠無法啟動。這種傷害,對用戶,對公司來說,都是巨大的。因此有必要進行API接口的測試。

三、如何來測試API接口?

目前測試API接口的方法很多,如:使用fiddler的發送get、post的功能進行校驗。缺點是,測試一遍後,在迴歸測試時,需要手動再執行一遍,非常耗時。

有人建議使用python的request進行API接口測試時,通過編碼方式進行API接口測試,的確是一個好的方法。但是問題是,時間。在有限的測試時間內,可能沒有時間去做這個腳本。如果完成這個腳本,至少要進行一輪手工測試,從而才能瞭解到期望的返回值是什麼樣的。

有沒有這樣一種工具,手動測試完成後,不需要寫太多代碼,立馬可以用功能性測試的cases進行自動化迴歸呢?

答案:有。PostMan就是這一款工具,既可以像使用Fiddler一樣,也可以像使用腳本一樣。

o試用範圍:http API接口的測試

o支持的平臺:windows & Mac OS

1.環境的搭建

1)安裝chrome瀏覽器

2)在chrome地址欄打開: https://chrome.google.com/webstore/search/postman

3)填加postman 和 postman interceptor

opostman是一個獨立的chrome app;

opostman interceptor 可以和postman進行數據同步,並將chrome瀏覽器中的瀏覽記錄發送到postman。

4)在chrome地址欄打開: chrome://extensions/

點擊postman下的"詳細信息",填加快捷方式到桌面。

5)啟動postman並註冊一個賬號。

2.Postman的使用

1)在chrome瀏覽器中打開postman interceptor同步開關

HTTP API接口測試實踐,如何使用Postman工具進行接口測試?

2)啟動post man,打開同步開關

HTTP API接口測試實踐,如何使用Postman工具進行接口測試?

3)在chrome瀏覽器中訪問搜狗首頁,在postman history的tab下可以看到訪問的記錄

HTTP API接口測試實踐,如何使用Postman工具進行接口測試?

4)填加一個檢查點

HTTP API接口測試實踐,如何使用Postman工具進行接口測試?

o選擇需要檢查的請求,如:m.sogou.com, 點擊 GET 請求右側的 Send 按鈕, 在body部分可以看到返回的數據。

HTTP API接口測試實踐,如何使用Postman工具進行接口測試?

o點擊請求部分底部的Tests,並從右側檢查點中,選擇需要驗證的點,如:驗證返回的內容中包含"微信",點擊"Response body: Contains string",則會在檢驗區域加入一行檢查語句,並將要檢查的字符串,改成"微信"。然後點擊"Save"保存,將檢查的請求添加到Collections中。

HTTP API接口測試實踐,如何使用Postman工具進行接口測試?

5) 自動運行檢查的集合

o 點擊"Collections"Tab,選擇建立的集合,點擊集合的"Run"按鈕,進入Test頁面。在Test頁面選擇,Start Test。

HTTP API接口測試實踐,如何使用Postman工具進行接口測試?

6) 測試結果會在右側的Results的tab中顯示出來。

HTTP API接口測試實踐,如何使用Postman工具進行接口測試?

7) PostMan支持多種不同的請求。從GET列表中可以選擇需要測試的類型。

3. NewMan的使用

在正確性測試時,可以把要測試請求全部保存下來,這樣可以在後續的bug驗證及迴歸時使用。未來再有相同模塊提測時,跑一遍之前的腳本,既可以完成之前功能的迴歸驗證。

NewMan是命令行的工具,需要在PC上安裝NPM,node環境。安裝完成後,進行如下命令安裝newman 。

HTTP API接口測試實踐,如何使用Postman工具進行接口測試?

安裝完成後,首先需要將postman中的腳本保存到本地,然後在命令行中執行,即可生成測試報告。

o 將PostMan的Collections保存到本地。

HTTP API接口測試實踐,如何使用Postman工具進行接口測試?

o 在命令行執行postman的腳本

o newman -c Test.json.postman_collection -H result.html

HTTP API接口測試實踐,如何使用Postman工具進行接口測試?

o 運行完成後,會生成一個html結果頁面。

HTTP API接口測試實踐,如何使用Postman工具進行接口測試?

PostMan的優點是:

1. 任何人都可以使用,不需要編碼能力;

2. 功能測試時的cases即刻可以變成自動化用例;

3. 像使用Fiddler一樣,查看數據的返回情況。

請關注+私信回覆:“測試”就可以免費拿到軟件測試學習資料,全棧測試工程師相關資料可以私信我。

HTTP API接口測試實踐,如何使用Postman工具進行接口測試?


分享到:


相關文章: