1. 程式人生 > 其它 >測試知識——介面測試測什麼?

測試知識——介面測試測什麼?

設計測試用例時主要考慮如下幾個方面:

 一,功能測試

介面的功能是否正確實現了

介面是否按照設計文件中來實現

(比如username引數寫為了user,那麼這就不符合,因為介面文件在整個開發中都需要使用,所以介面實際的設計要與介面設計文件中保持一致)

  • 相容性測試:

    比如說今天介面進行了調整,但是前端沒有進行變更,這時候需要驗證新的介面是否滿足舊的呼叫方式

  • 錯誤碼測試:

    通用的錯誤碼與業務錯誤碼是否能夠清晰的說明呼叫問題,錯誤碼是否能夠儘可能的全的覆蓋所有的情況

  • 返回值測試:

    返回值除了內容需要是正確的,還需要型別也是正確的,保證呼叫方拿到這些引數能夠正確的解析

 

引數邊界值、等價類測試

  • json格式測試:

    通常我們的介面一般設計的都是傳遞json串,那麼就需要去測試 如果傳遞非json的情況,這時候程式會不會正確的處理,返回相應的 error code

  • 預設值測試:

    很多情況一些非必填的引數會有預設值,比如說一個查詢的介面,引數count為返回查詢的結果數量, 預設為10,那麼就應該有一條case來測試,當然前置條件是資料庫裡面必須要存在這樣的資料超過10條。

二,邏輯業務

 是否有依賴業務,比如檢視訂單,是需要使用者首先登入的,所以肯定要保證登入了或有相應的cookie

 業務邏輯測試:傳遞正確的引數,介面對資料庫進行查詢的操作,需要去驗證資料庫查詢是否正確,介面對資料庫進行 增刪改的操作,也需要看資料庫是否同步進行了這些操作

三,異常測試

 異常分為兩類,引數異常資料異常

 1、引數異常:

  • 關鍵字引數:

    將引數寫為開發語言中的關鍵字

  • 引數為空:

    比如去掉了username引數

  • 多或少引數:

    多或者少引數的驗證,現在還不確定如果一個介面多了引數如果沒有報錯是否是合理的,或者是否需要優化,因為就目前開發給予的答案是,一般不對介面多了引數的處理

  • 錯誤引數:

    比如將username引數寫為了user等看是否能返回相應的error code

 2、資料異常:

  • 關鍵字資料:

    將引數的值填為開發語言中的關鍵字

  • 資料為空:

    將引數的額值填為空

  • 長度不一致:

    因為資料庫中每個欄位都設定有欄位長度,填寫不符合的長度進行驗證

  • 錯誤資料:

    就是將引數的值任意填寫,或填寫不存在的數值

  • 異常型別測試:

    比如count引數,這個引數的型別一定是可以轉換為int型別的,這時候我們需要測試如果傳的一些不可以 轉換為int型別值來測試程式碼是否加入判斷

 

四,效能測試

  • 響應時間

  • 吞吐量

  • 併發使用者數

  • 佔用記憶體,CPU等

 

五,安全性測試 

敏感資訊是否加密

必要引數是否後端也進行校驗

現在很多系統前後端架構是分離的,從安全層面來說,只依賴前端進行限制已經完全不能滿足系統的安全要求(繞過前端太容易了), 需要後端同樣進行控制,在這種情況下就需要從介面層面進行驗證

 介面是否防惡意請求(SQL注入)

    • cookie

      將header中的cookie修改或刪除後看是否能返回相應的error code

    • header

      刪除或修改header中部分引數的值,看是否能返回相應的error code

    • 唯一識別碼

      刪除修改唯一識別碼測試