小米HR:说说对API有多少的理解? 看了后,和面试官扯皮,吹牛逼!绰绰有余!
目錄
什么是API?
什么是API測試
API測試的測試用例:
API測試方法:
如何進行API測試
API測試的最佳做法:
API測試檢測到的錯誤類型
API測試工具
API測試的挑戰
結論:
最后
什么是API?
API(全稱Application Programming Interface)是兩個單獨的軟件系統之間的通信和數據交換。實現API的軟件系統包含可以由另一個軟件系統執行的功能/子例程。
?
什么是API測試
API測試是一種用于驗證API(應用程序編程接口)的軟件測試類型。它與GUI測試非常不同,主要集中在軟件體系結構的業務邏輯層。在API測試中,您無需使用標準的用戶輸入(鍵盤)和輸出,而是使用軟件將調用發送到API,獲取輸出并記下系統的響應。
API測試需要可以通過API進行交互的應用程序。為了測試API,您需要
-
使用測試工具調用API
-
編寫自己的代碼調用API
?
API測試的測試用例:
API測試的測試用例基于
-
基于輸入條件的返回值:相對容易測試,因為可以定義輸入并可以驗證結果
-
不返回任何內容:沒有返回值時,將檢查系統上的API行為
-
觸發其他一些API /事件/中斷:如果API的輸出觸發了某些事件或中斷,則應跟蹤這些事件和中斷偵聽器
-
更新數據結構:更新數據結構將對系統產生某些結果或影響,應進行身份驗證
-
修改某些資源:如果API調用修改了某些資源,則應通過訪問相應資源來對其進行驗證
?
API測試方法:
以下幾點可幫助用戶進行API測試:
-
了解API程序的功能并明確定義程序范圍
-
應用諸如等效類,邊界值分析和錯誤猜測之類的測試技術,并為API編寫測試用例
-
API的輸入參數需要適當計劃和定義
-
執行測試用例,并比較預期結果和實際結果。
-
API測試和單元測試之間的區別
| 開發人員執行它 | 測試人員執行它 |
| 單獨的功能經過測試 | 端到端功能經過測試 |
| 開發人員可以訪問源代碼 | 測試人員無法訪問源代碼 |
| 還涉及UI測試 | 僅測試API函數 |
| 僅測試基本功能 | 所有功能問題均經過測試 |
| 范圍有限 | 范圍更廣 |
| 通常在辦理登機手續前運行 | 創建完成后運行 |
?
如何進行API測試
API測試應至少涵蓋除常規SDLC流程以外的以下測試方法:(1140267353)一起成長一起加油的伙伴群!軟件測試,與你同行!
-
發現測試:測試組應手動執行API中記錄的一組調用,例如驗證是否可以列出,創建和刪除API公開的特定資源。
-
可用性測試:此測試可驗證API是否功能正常且用戶友好。API是否也可以與其他平臺很好地集成
-
安全測試:此測試包括需要哪種身份驗證以及是否通過HTTP加密敏感數據或同時通過這兩種方法對敏感數據進行加密
-
自動化測試:API測試應以創建一組腳本或可用于定期執行API的工具為最終結果
-
文檔:測試團隊必須確保文檔足夠,并提供足夠的信息來與API交互。文檔應成為最終交付成果的一部分
?
API測試的最佳做法:
-
測試用例應按測試類別分組
-
在每個測試的頂部,您應包括被調用的API的聲明。
-
測試用例中應明確提及參數選擇
-
確定API函數調用的優先級,以便測試人員輕松進行測試
-
每個測試用例應盡可能獨立且獨立于依賴項
-
在開發中避免“測試鏈”
-
處理諸如-Delete,CloseWindow等一次性調用函數時必須格外小心。
-
呼叫排序應執行且計劃合理
-
為了確保完整的測試范圍,請為API的所有可能的輸入組合創建測試用例。
?
API測試檢測到的錯誤類型
-
無法優雅地處理錯誤情況
-
未使用的標志
-
功能缺失或重復
-
可靠性問題。難以連接API并從API獲得響應。
-
安全問題
-
多線程問題
-
性能問題。API響應時間非常高。
-
錯誤的錯誤/警告呼叫者
-
對有效參數值的錯誤處理
-
響應數據的結構不正確(JSON或XML)
?
API測試工具
由于API和單元測試都是目標源代碼,因此可以使用工具/框架進行自動化。
-
jmeter
-
postwomen
-
Parasoft SOAtest
-
Runscope
-
Postman
-
Curl? ??(1140267353)一起成長一起加油的伙伴群!軟件測試,與你同行!
-
Eclipse SDK tool- Automated API testing
API測試的挑戰
API測試的挑戰包括:
-
Web API測試中的主要挑戰是參數組合,參數選擇和調用排序
-
沒有可用于測試應用程序的 GUI ,這很難提供輸入值
-
對測試人員而言,在不同系統中驗證和驗證輸出幾乎沒有困難
-
測試人員必須知道參數的選擇和分類
-
異常處理功能需要測試
-
測試人員必須具備編碼知識
結論:
API由代表業務邏輯層的一組類/函數/過程組成。如果未正確測試API,則可能不僅會導致API應用程序出現問題,還會導致調用應用程序出現問題。它是軟件工程中必不可少的測試。
?
最后
俺叫小楓,一個成天想著一夜暴富的測試員
(1140267353)一起成長一起加油的伙伴群!軟件測試,與你同行!
群內可領取最新軟件測試大廠面試資料和Python自動化、接口、框架搭建學習資料!
點贊關注不迷路!!!【三連?】,有問題也可私聊喲~(*?▽?*)
總結
以上是生活随笔為你收集整理的小米HR:说说对API有多少的理解? 看了后,和面试官扯皮,吹牛逼!绰绰有余!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 谷歌邮箱lmap服务器填什么_解决Gma
- 下一篇: The perfect floor ch