接口測試不只測試參數和返回值

發表于:2020-11-30 10:00  作者:佚名   來源:InfoQ

字體: | 上一篇 | 下一篇 |我要投稿 | 推薦標簽: 軟件測試技術 接口測試

  一般理解的接口測試無非就是,輸入url、參數值,點擊請求發送查看一下響應值和響應狀態碼是否正常就完事兒了。
  但是接口測試真正的關注點不值這些,今天就給大家說說接口測試有那些需要關注的地方。
  在實際項目中,后端接口測試通過后,一般前端還需要再測試一遍,讀者可能會提出疑問:后端接口測試一遍,前端也測試一遍,是不是重復測試了?其實這兩者并不重復,區別在于后端接口測試和前端功能測試各自的側重點不一樣,后端接口測試側重點是檢查數據的交換、傳遞和控制管理過程。而前端功能測試更加測試檢測提供給用戶的使用功能是否正確可用。雖然各種測試的重點不一樣,但也存在相同的部分,以功能測試、業務邏輯測試、性能測試安全測試為例:
  一、接口功能關注點
  功能測試:由于測試最終的目標都是業務功能是否正確且穩定可用,所以不管是前端給用戶使用的功能策是,還是后端的接口測試,功能保障是基本要求,也是后端測試和前端測試兩種測試重合度最高的一塊。
  具體關注點:
  1.接口的功能是否正確實現了
  2.接口是否按照設計文檔中來實現(比如username參數寫為了name,那么這就不符合,因為接口文檔在整個開發中都需要使用,所以接口實際的設計要與接口設計文檔中保持一致)
  3.兼容性測試:比如說今天接口進行了調整,但是前端沒有進行變更,這時候需要驗證新的接口是否滿足舊的調用方式
  4.錯誤碼測試:通用的錯誤碼與業務錯誤碼是否能夠清晰的說明調用問題,錯誤碼是否能夠盡可能的全的覆蓋所有的情況
  5.返回值測試:返回值除了內容需要是正確的,還需要類型也是正確的,保證調用方拿到這些參數能夠正確的解析
  6.默認值測試:很多情況一些非必填的參數會有默認值,比如說一個查詢的接口,參數count為返回查詢的結果數量,默認為10,那么就應該有一條case來測試,當然前置條件是數據庫里面必須要存在這樣的數據超過10條。
  二、接口業務邏輯測試
  1.是否有依賴業務,比如查看訂單,是需要用戶首先登錄的,所以肯定要保證登錄了或有相應的cookie
  2.業務邏輯測試:傳遞正確的參數,接口對數據庫進行查詢的操作,需要去驗證數據庫查詢是否正確,接口對數據庫進行增刪改的操作,也需要看數據庫是否同步進行了這些操作
  三、接口性能測試
  1.接口響應時間
  2.接口對應的服務器的吞吐量
  3.接口并發數量
  4.服務器進出口帶寬
  四、接口安全測試
  1.接口中敏感信息是否加密
  2.必要參數是否后端也進行校驗(現在很多系統前后端架構是分離的,從安全層面來說,只依賴前端進行限制已經完全不能滿足系統的安全要求(繞過前端太容易了),需要后端同樣進行控制,在這種情況下就需要從接口層面進行驗證)
  3.接口是否防惡意請求(SQL注入)
  4.cookie:就是將header中的cookie修改或刪除后看是否能返回相應的errorcode
  5.header:就是刪除或修改header中部分參數的值,看是否能返回相應的errorcode
  6.唯一識別碼:刪除修改唯一識別碼測試
  五、接口測試工具
  apipost可以進行接口的功能測試和業務邏輯測試,除此之外還有強大的接口文檔生成功能。
  jmeter強大的接口性能測試功能

  本文內容不用于商業目的,如涉及知識產權問題,請權利人聯系博為峰小編(021-64471599-8017),我們將立即處理

評 論

論壇新帖

頂部 底部


建議使用IE 6.0以上瀏覽器,800×600以上分辨率,法律顧問:上海信義律師事務所 項棋律師
版權所有 上海博為峰軟件技術股份有限公司 Copyright©51testing.com 2003-2021, 滬ICP備05003035號
投訴及意見反饋:webmaster@51testing.com; 業務聯系:service@51testing.com 021-64471599-8017

滬公網安備 31010102002173號

51Testing官方微信

51Testing官方微博

掃一掃 測試知識全知道

日本av