介面測試是什麼&介面測試文件規範
以下內容選自《大話軟體測試-效能、自動化、安全及團隊管理》
介面測試是什麼?介面測試怎麼做?這樣的問題幾乎每天都會被問到幾十次,可見很多朋友對於介面測試並不是十分了解,而介面測試又是現在網際網路產品測試中的重中之重,所以學習並掌握它是必須的。本章我們力爭通俗化的揭開介面測試的面紗,讓大家看到它的本質。
特別需要指出,在本書的其他章節也講解了介面測試的相關內容,比如LoadRunner、Jmeter、SoapUI章節等,所以想掌握介面測試最好通讀本書。
9.1介面測試是什麼
介面有時候我們也會叫做API,不論是哪種叫法本質上都是介面,就好像叫你的全名和小名,本質上都是你這個人。對於介面測試是什麼我們給大家進行兩種解釋。
不通俗的解釋:傳送一個請求到伺服器端,伺服器端處理完畢之後返回一個響應,我們對響應進行驗證是否符合預期結果。至於伺服器端是怎麼處理這個請求的我們並不關心。我們只關心輸入和輸出即可,如圖9.1。
圖9.1 請求和響應
通俗的解釋:介面和電腦的USB一樣,你不需要關心內部是怎麼實現的,你只需要知道這個介面在哪,怎麼用,插上能幹什麼即可。比如:我要驗證這個USB能不能用,那麼插入滑鼠,滑鼠可以正常工作說明USB可以用,我們並不關心USB的實現邏輯。同理,我們的介面測試也是一樣的。
9.2介面文件規範
介面測試進行的前提是一定要有介面文件,我們要通過文件獲取介面的說明、請求引數、響應引數以及一些依賴關係。一般公司都會有介面文件的,畢竟開發人員也要做介面的維護,如果沒有文件以後維護起來是比較麻煩的。當然有的公司確實沒有介面文件,那對於測試工程師來說只能自己通過抓包來分析請求和響應了。
規範的介面文件不管是對於開發還是測試都是有百利而無一害的,一般都包括介面名、介面描述、介面地址、請求方式、請求引數和格式、響應引數和格式等,具體示例如下:
l 介面名:mLogin
l 介面描述:移動端登入介面
l 介面地址:http://xxx/mLogin
l 請求方式:POST
l 支援格式:JSON
l 請求引數:
username 必填 型別string 使用者名稱
pwd 必填 型別string 密碼
l 響應引數:
errorCode 狀態碼 0表示成功;1表示失敗
username 使用者名稱
這裡只是舉了個例子,實際需要哪些描述還是要根據實際情況做調整的。
對於介面文件的維護也是一件讓人頭疼的事情,尤其是介面數量比較多的時候。我見過的維護方法有如下幾種:
l Word或者Excel維護。不推薦,量小的時候還可以,量大的時候太困難。
l Wiki維護。推薦,相對來說比較好管理。
l 介面文件維護工具。比如:apizza、apiview、小么雞等,如圖9.2。
圖9.2 介面文件維護工具