接口自動化之接口整理(抓包)


  陸續在幾個公司都有接觸過接口測試,每個公司的接口測試需求都差不多。但是,項目的大小會影響接口測試任務的簡繁。

  涉及到TCP協議的接口,也涉及到http協議的接口。

  前段時間,剛接到一個走HTTP協議的接口測試需求。

  開發提供過來的接口如下:

test:

 1. get_list

 a. url - subject_id / compliance_id
    b. ajax - subject_id / compliance_id

  2.get_map

 a. url -
    b. ajax - qry_id / extra_col

  3............

 

由上得出:

1.每個接口有兩種請求方式

a)走地址欄url-----GET請求

b)走ajax模式

2.兩種請求方式后端帶有參數的key

3.無其他信息

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

咨詢開發同個接口為什么走兩種請求方式?

得到的回復:

1.url----Get請求獲取靜態信息,即處理獲取數據后的前端頁面處理

2.ajax----POST請求為處理數據,返回json數據,即用戶需要的數據

請根據這個回復,確認測試的需求范圍!!!

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

通過以上信息,測試在開始接口自動化之前,需要將開發提供的接口轉換為測試熟悉的模式。

HTTP協議,正常情況下需要包括頭部信息,地址,參數等。而開發提供的信息並沒有這么豐富。

所以,測試要自己進行抓包獲取剩余未知的信息!!!

以百度新聞為范例,谷歌瀏覽器做為抓包工具

 1.進入百度新聞網址:http://news.baidu.com/

 2.右鍵點擊網頁->【檢查】(如果您的網站右鍵被禁止,請使用F12打開開發者模式)

 3.請在打開工具菜單欄選擇network

 4.刷新網頁,觀察工具變化(請選擇XHR,我們僅觀察html頁面,js/css等不需要)

 5.點擊,出現的Name,即開發提供中的模塊--test如下:

 a)General顯示內有我們需要的信息:URL地址,請求模式(GET)等

 b)response headers為我們發送請求過去,服務器返回響應的頭部信息

 c)request headers內有我們需要的信息,當你不知道哪些是接口特殊需要的,請完整保留該區域的所有信息

 d)query string parameter為發送請求需要帶的參數

 6.通過第5點,將接口整理成測試比較熟悉的格式

get_list接口

接口功能:xxxx

請求url

http://IP:PORT/test/get_list

請求模式

POST

請求頭

 

Accept

application/json, text/javascript, */*; q=0.01

Accept-Encoding

gzip, deflate

Connection

keep-alive

Host

IP:PORT

Referer

http://IP:PORT

X-Requested-With

XMLHttpRequest

參數

subject_id:11

compliance_id:11

響應(json)

{data:[{}]}

備注

描述該接口依賴的其他接口名稱,該接口的特殊點

 

 備注

 如果是移動端的web獲取app,請使用第三方工具進行抓包如flddler

 如果知道產品的開發語言,並且可以看懂代碼的話,請根據接口名稱查看源碼,確定參數是否必填/返回的錯誤響應等等信息

 開始接口測試之前,請考慮清楚接口測試的范圍(功能?冒煙回歸?壓測?),這將影響工具的選擇及接口覆蓋率的腳本編寫


免責聲明!

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



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