天天看點

淺析接口測試

  接口測試是一種測試類型,又是一種測試方法,它是很多個領域測試工作的一部分,同時它又可以通過不同方式來執行;

  功能測試

  功能測試即我們常說的黑盒測試,傳統意義上的黑盒測試即驗證開發出來的産品是否滿足産品提出的産品需求說明書,而接口實際上也是産品需求的一部分;

  例如:

  産品需求:用戶端輸入一個詞,點選按鈕,即按時間倒叙展示這個詞相關的新聞;

  功能實作:用戶端将使用者輸入的詞拼成http請求,發往服務端接口,接口查找了這個詞有關的新聞,并且按時間倒叙拼接成json,回複給用戶端,用戶端按順序展示。

  這個例子裡,中心需求 ≈ 接口功能

  安全測試

  經常聽說的安全測試很大程度上也屬于接口測試的一部分,因為接口相當于内部伺服器和外界的橋梁,如果橋上沒有警衛,那任何人都可以進到内部伺服器,這裡說的警衛其實就是接口的安全校驗;

  舉個已經爛了的例子:

  接口功能:接收使用者輸入的詞,到資料庫查詢這個詞的解釋;

  這裡涉及到将使用者輸入的詞拼成sql的過程,接口要做的不僅僅隻拼接sql并執行,更重要的是過濾使用者輸入的異常字元串;

  

淺析接口測試

  

  自動化測試

  傳統意義上的自動化是用戶端通過架構自動執行黑盒case的過程,但接口測試同樣可以自動化,看看下面的例子:

  測試需求:服務端實作接收用戶端輸入的各種詞語、句子、符号、單詞等等資訊,查詢判斷輸入的類型、解釋語句、或者判斷這是個非法查詢,用戶端依據服務端傳回的json展示結果。

  這個需求需要非常多的輸入case,比如各類短語、字元、全角、半角、空格、繁體、簡體、韓語、日語等等,然而這些case有一些共同的檢查點,比如:傳回值要是json格式,一定要有類型字段、是否合法的bool值、如果合法的話要有解釋語句内容;那麼這個需求,我們就可以通過自動化來驗證需求;我們隻需要寫好入參的case就好了;

  性能測試

  一般來說,性能測試即服務端接口的性能測試,這也是一個需求能否正常上線的重要關注點。

  這裡說的接口性能測試最重要的是下面兩部分:

  1、服務端能承受的最大壓力;

  2、正常負載時的穩定性;

繼續閱讀