【軟件測試】如何做好接口測試?

1. 首先,什么是接口?

接口無非有兩種,一種是內部接口,一種調用對外包裝的接口

內部接口:方法與方法之間,模塊與模塊之間的交互,程序內部拋出的接口,例如下訂單,首先你需要登錄,然后調用下訂單接口,兩個模塊有交互那么相互之間的調用,就屬于內部接口

對外包裝的接口:例如A部門做一個買車服務,它賣兩種車一是二手,二是新車,那么它要賣二手車,是不是直接可以調用二手車部門共享的數據進行包裝,從而是不是達到數據的共享等等,就不一一舉例子.

2.常用接口采用方式:

1、webService接口:是走soap協(xié)議通過http傳輸,請求報文和返回報文都是xml格式的,我們在測試的時候都用通過工具才能進行調用,測試??梢允褂玫墓ぞ哂蠸oapUI、jmeter、loadrunner等;

2.http api接口:是走http協(xié)議,通過路徑來區(qū)分調用的方法,請求報文都是key-value形式的,返回報文一般都是json串,有get和

post等方法,這也是最常用的兩種請求方式??梢允褂玫墓ぞ哂衟ostman、RESTClient、jmeter、loadrunner等;

3.https并非是應用層的一種新協(xié)議,只是http通信接口部分用SSL(Secure socket Layer)和TLS(Transport Layer Security)協(xié)議代替而已

那么上述1,2,3

webService:返回的格式xml還需要解析麻煩,而且速度可能有降低(目前開發(fā)平臺等都使用的http(get/post實現的)

http協(xié)議時超文本傳輸協(xié)議(不安全)

https是安全的超文本傳輸協(xié)議,是安全版的http協(xié)議,使用安全套接字層(SSL)進行信息交換。

https協(xié)議主要針對解決http協(xié)議以下不足:

1.通信使用明文(不加密),內容可能會被竊聽

2.不驗證通信方身份,應此可能遭遇偽裝

3.無法證明報文的完整性(即準確性),所以可能已遭篡改

綜上所述:目前我們看到的接口測試.,相信大家用的https、http多一些

3.前端和后端

前端:app,網頁統(tǒng)稱前端(展示-負責貌美如花)

后端: 后臺提供數據,校驗,下訂單等等處理(負責掙錢養(yǎng)家)

4. 接口測試概念

接口測試是測試系統(tǒng)組件間接口的一種測試。接口測試主要用于檢測外部系統(tǒng)與系統(tǒng)之間以及內部各個子系統(tǒng)之間的交互點。測試的重點是要檢查數據的交換,傳遞和控制管理過程,以及系統(tǒng)間的相互邏輯依賴關系等(通俗來說就是,檢查業(yè)務邏輯是否滿足業(yè)務需求,校驗字段是否正常你實際結果是否滿足預期)

5.接口的組成:

a.接口說明

b、調用url

c、請求方法(get\post)

d、請求參數、參數類型、請求參數說明

e、返回參數說明

6.為什么要做接口測試,接口測試的目標

接口其實app和前端交互用的,所以好多人問,為啥做功能測試還要測接口,目標是啥不是多此一舉嗎?首先我告訴大家,這種想法是錯誤的.

那么舉一個例子:

例如一個登陸接口,例如產品上規(guī)定用戶名6-10個字符數字下劃線,但后端沒做判斷。但我們業(yè)務人員測試肯定驗證,但只是前端做了校驗,后端壓根就忘了這個小需求.那么后果來了如果一個懂的直接抓包去篡改你的接口,然后繞過校驗,通過sql注入直接隨意登錄。如果你這是一個下單業(yè)務,是不是給公司造成了很大損失

所以此時此刻接口測試目標來了:

1.可能發(fā)現客戶端沒有發(fā)現的bug(那么也叫隱藏bug)

2.及早爆出風險(保證質量正常上線)

3.接口穩(wěn)定了,前端隨便改

4.最重要檢查系統(tǒng)安全性,穩(wěn)定性

7.常常有人問我怎么測

1.無非就兩種get/post工具postman/httprequest等

2.狀態(tài)嗎你至少了解

例如:200(成功)/300(重定向別的地方)/400(請求語法錯誤)/500(服務器異常)

怎么測:

A. 用例設計(根據業(yè)務邏輯來設計用例,登錄5次,需要2分鐘后再登錄刪除關注的車,列表少一條數據)

B. 參數組合(傳入不同值)

C. 接口安全(繞過驗證/繞過身份驗證/參數是否加密等)

D. 異常驗證(輸入異常參數邊界值)

8.用什么工具測

功能:Postman/HTTPrequest/jemter

自動化:restassured/python httprequest

最后:

歡迎大家關注我的公眾號:測試人追風,獲取大廠軟件測試開發(fā)面試/技術進階資料。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 本文主要分為兩個部分:第一部分:主要從問題出發(fā),引入接口測試的相關內容并與前端測試進行簡單對比,總結兩者之前的區(qū)別...
    JAVA伯樂閱讀 788評論 0 2
  • 一、接口定義: 模塊與模塊之間的連接。用于數據的傳輸與接收。 二、接口分類: 內外來分: 系統(tǒng)對外的接口:B需要A...
    鹽果兒閱讀 721評論 0 0
  • 這幾天小編一直看到有人在后臺給小編回復:接口測試,那么如何做好接口測試呢?我們今天來講解一下,希望對大家有所幫助,...
    瘋狂的程序猿丶閱讀 2,226評論 0 1
  • 漸變的面目拼圖要我怎么拼? 我是疲乏了還是投降了? 不是不允許自己墜落, 我沒有滴水不進的保護膜。 就是害怕變得面...
    悶熱當乘涼閱讀 4,480評論 0 13
  • 感覺自己有點神經衰弱,總是覺得手機響了;屋外有人走過;每次媽媽不聲不響的進房間突然跟我說話,我都會被嚇得半死!一整...
    章魚的擁抱閱讀 2,382評論 4 5

友情鏈接更多精彩內容