<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # API 測試教程:10 分鐘內學習! > 原文: [https://www.guru99.com/api-testing.html](https://www.guru99.com/api-testing.html) 在進行 API 測試之前,我們先了解一下 ## 什么是 API? API(完整格式 **A** 復制 **P** 編程 **I** 接口)可實現兩個單獨的軟件系統之間的通信和數據交換。 實現 API 的軟件系統包含可以由另一個軟件系統執行的功能/子例程。 ## 什么是 API 測試? **API 測試**是一種軟件測試類型,用于驗證應用程序編程接口(API)。 API 測試的目的是檢查編程接口的功能,可靠性,性能和安全性。 在 API 測試中,您可以使用軟件將調用發送到 API,獲取輸出并記下系統的響應,而不是使用標準的用戶輸入(鍵盤)和輸出。 API 測試與 GUI 測試有很大不同,并且不會專注于應用程序的外觀。 它主要集中在軟件體系結構的業務邏輯層。 ![API Testing image](https://img.kancloud.cn/e0/78/e078e4374d8a01f679119dd234d55f10_557x223.png) API 測試需要可以通過 API 進行交互的應用程序。 為了測試 API,您需要 * 使用測試工具來驅動 API * 編寫自己的代碼以測試 API 在本教程中,您將了解有關- * [設置 API 測試環境](#3) * [API](#4) 的輸出類型 * [API 測試用例](#5) * [API 測試方法](#6) * [API 測試和單元測試](#7)之間的區別 * [API 測試中要測試的內容](#8) * [API 測試的最佳做法](#9) * [API 測試檢測到的錯誤的類型](#10) * [API 測試工具](#11) * [API 測試的挑戰](#12) ## API 測試環境的設置 * API 測試與其他軟件測試類型不同,因為 GUI 不可用,但是您需要設置初始環境,該初始環境使用一組必需的參數來調用 API,然后最終檢查測試結果。 * 因此,為 API 測試設置測試環境似乎有些復雜。 * 數據庫和服務器應根據應用程序要求進行配置。 * 安裝完成后,應調用 API 函數以檢查該 API 是否正常工作。 ## API 的輸出類型 API 的輸出可能是 1. 任何類型的數據 2. 狀態(例如通過或失敗) 3. 調用另一個 API 函數。 讓我們看一下上述每種類型的示例 **任何類型的數據** 示例:有一個 API 函數應將兩個整數相加。 ``` Long add(int a, int b) ``` 這些數字必須作為輸入參數給出。 輸出應該是兩個整數的總和。 需要驗證此輸出是否具有預期結果。 呼叫需要完成,例如 ``` add (1234, 5656) ``` 如果數字超過整數限制,則必須處理異常。 **狀態(例如通過或失敗)** 考慮以下 API 函數- 1. 鎖() 2. 開鎖() 3. 刪除() 它們返回任何值,例如 True(成功的情況下)或 false(錯誤的情況下)作為輸出。 更準確的[測試用例](/test-case.html)是,可以調用任何腳本中的函數,然后在數據庫或應用程序 GUI 中檢查是否有更改。 **調用另一個 API /事件** ![Approach of API Testing image](https://img.kancloud.cn/e6/ec/e6ec6a312f25d0ae2e3ccfee4cd0c63c_113x122.png) 在這種情況下,我們調用 API 函數之一,而 API 函數又將調用另一個函數。 例如,-第一個 API 函數可用于刪除表中的指定記錄,然后該函數調用另一個函數來刷新數據庫。 ## API 測試用例: API 測試的測試用例基于 * **基于輸入條件的返回值:**相對容易測試,因為可以定義輸入并可以驗證結果 * **不返回任何內容:**當沒有返回值時,將檢查系統上 API 的行為 * **觸發其他一些 API /事件/中斷:**如果 API 的輸出觸發了某些事件或中斷,則應跟蹤那些事件和中斷偵聽器 * **更新數據結構:**更新數據結構將對系統產生某些結果或影響,因此應進行身份驗證 * **修改某些資源:**如果 API 調用修改了某些資源,則應通過訪問相應資源來對其進行驗證 ## API 測試方法: 以下幾點可幫助用戶進行 API 測試: ![Learn API testing in 10 minutes!!!](https://img.kancloud.cn/32/ef/32efccddb75be98d0fe27a2770d1cf1a_272x258.png) 1. 了解 API 程序的功能并明確定義程序范圍 2. 應用諸如等效類,邊界值分析和錯誤猜測之類的測試技術,并為 API 編寫測試用例 3. 需要適當計劃和定義 API 的輸入參數 4. 執行測試用例,并比較預期結果和實際結果。 ## API 測試和單元測試之間的區別 <colgroup><col style="width: 312px;"><col style="width: 312px;"></colgroup> | 單元測試 | API 測試 | | * 開發人員執行它 | * 測試人員可以執行 | | * 測試了單獨的功能 | * 端到端功能經過測試 | | * 開發人員可以訪問源代碼 | * 測試人員無法訪問源代碼 | | * UI 測試也涉及到 | * 僅測試 API 函數 | | * 僅測試了基本功能 | * 所有功能問題均經過測試 | | * 限于范圍 | * 范圍更廣 | | * 通常在簽到前運行 | * 建立建立后執行 | ## 如何進行 API 測試 API 測試應至少涵蓋除常規 SDLC 流程以外的以下測試方法 * **發現測試:**測試組應手動執行 API 中記錄的一組調用,例如驗證可以適當地列出,創建和刪除 API 公開的特定資源 * **可用性測試:**此測試可驗證 API 是否功能正常且用戶友好。 API 是否也可以與其他平臺很好地集成 * **安全測試:**此測試包括要求進行哪種類型的身份驗證以及是否通過 HTTP 加密敏感數據或同時對兩者進行加密 * **自動化測試:** API 測試應最終創建一組腳本或可用于定期執行 API 的工具 * **文檔:**測試團隊必須確保文檔足夠,并提供足夠的信息以與 API 交互。 文檔應成為最終交付成果的一部分 ## API 測試的最佳做法: * 測試用例應按測試類別分組 * 在每個測試的頂部,您應包括被調用的 API 的聲明。 * 測試用例中應明確提及參數選擇 * 確定 API 函數調用的優先級,以便測試人員輕松進行測試 * 每個測試用例應盡可能獨立,并且與依賴關系盡可能獨立 * 在開發中避免“測試鏈” * 處理諸如-Delete,CloseWindow 等一次性調用函數時必須格外小心。 * 呼叫排序應執行且計劃合理 * 為確保完整的測試范圍,請為 API 的所有可能的輸入組合創建測試用例。 ## API 測試檢測到的錯誤類型 * 無法優雅地處理錯誤情況 * 未使用的標志 * 功能缺失或重復 * 可靠性問題。 很難連接 API 并從 API 獲得響應。 * 安全問題 * 多線程問題 * 性能問題。 API 響應時間非常高。 * 錯誤的錯誤/警告呼叫者 * 對有效參數值的錯誤處理 * 響應數據的結構不正確(JSON 或 XML) ## API 測試工具 由于 API 和[單元測試](/unit-testing-guide.html)都是目標源代碼,因此可以使用工具/框架進行自動化。 * Runscope * 郵差 * 卷曲 * 固定 * 檢查一下 * CTESK * 點測試 * Eclipse SDK 工具-自動化 API 測試 查看頂級 API 測試工具[列表](/top-6-api-testing-tool.html) ## API 測試的挑戰 API 測試的挑戰包括: * Web API 測試中的主要挑戰是**參數組合,參數選擇和調用排序** * 沒有可用的 GUI **來測試應用程序,這使**難以提供輸入值 * 對測試人員而言,在不同系統中驗證和驗證輸出幾乎沒有困難 * 測試人員必須知道參數的選擇和分類 * 異常處理功能**需要測試** * 測試人員必須具備編碼知識 ## 結論: API 由代表業務邏輯層的一組類/函數/過程組成。 如果未正確測試 API,則可能不僅會導致 API 應用程序出現問題,還會導致調用應用程序出現問題。 它是軟件工程中必不可少的測試。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看