日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

api自动化测试_API测试和自动化101:基本指南

發布時間:2023/12/3 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 api自动化测试_API测试和自动化101:基本指南 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

api自動化測試

API代表A pplication P AGC軟件覆蓋整個院落。 通常,API用于通過使用任何通信方式來促進兩個不同應用程序之間的交互。 在網絡上使用API??時,我們將其稱為“ Web服務”。 近年來,API已成為編程的Struts。 與在應用程序中一樣,編寫API與數據庫或與其他模塊進行通信現在已成為一種慣例,這就是為什么作為測試人員,我們必須測試API以最大程度地覆蓋測試范圍。

作為集成測試的一部分,API自動化可以幫助加速測試并提高效率。 由于大多數公司在業務層使用RESTful微服務/ API,因此API測試已成為任何版本測試計劃的關鍵組成部分。

用最簡單的術語來說,API是一項服務,可以幫助兩個不同的應用程序相互通信。 通常,API用于抽象業務邏輯并直接對任何應用程序進行數據庫訪問。

從邏輯上講,我們可以將整個系統分為三層:

  • 表示層–這是向最終用戶開放的用戶界面(GUI)。 質量檢查人員在此層執行功能測試。
  • 業務層-這是編寫邏輯的應用程序用戶界面。 用技術術語來說,這就是代碼/算法所在的地方。 API在這一層中得到體現。
  • 數據庫層-存在應用程序數據的位置。
  • 換句話說,API是我們互聯世界的大腦。 這是將我們的數字世界粘合在一起的工具,協議,標準和代碼的集合。 由于它們提供的動態特性和功能,API使公司變得更加敏捷,事物可以移動并且一切都以簡化的集成方式一起工作。因此,API測試是在服務級別和集成級別對API進行測試。水平。

    API的測試策略-

    在測試API時,測試人員應集中精力使用軟件進行API調用,以便在觀察和記錄系統響應之前接收輸出。 最重要的是,測試在不同條件下API返回正確的響應或輸出。 此輸出通常是以下三個之一:

    • 通過或失敗狀態
    • 數據或信息
    • 調用另一個API

    但是,也可能根本沒有輸出,或者發生了完全無法預測的事情。 這使測試人員的角色對于應用程序開發過程至關重要。由于API是許多應用程序的數據中心,因此API的數據驅動測試可以幫助提高測試覆蓋率和準確性。

    在直接測試API時,指定通過/失敗方案更具挑戰性。 但是,在比較響應中的API數據或比較另一個API中的API調用后的行為時,將幫助您設置確定的驗證方案。

    API測試是整個軟件測試和QA測試鏈中最具挑戰性的部分之一,因為它可以確保我們的數字生活以越來越無縫和高效的方式運行。 盡管開發人員傾向于只測試他們正在使用的功能,但測試人員負責測試單個功能和一系列功能或一系列功能,以發現端到端的協作方式。

    API測試類型

    首先確定您需要對API執行哪種類型的測試。 就像測試人員對其產品功能進行不同類型的測試一樣,API也是如此。 API的常見測試包括-

    單元測試 –測試單個操作的功能。 例如-Google提供了地理編碼API,以獲取任何位置的經度和緯度。 這通常以地址作為輸入,并返回緯度。 現在,對于此API的單元測試,測試人員可以通過不同的位置并驗證結果。

    功能測試-這種測試類型主要集中在API的功能上。 這將包括測試用例,以驗證HTTP響應代碼,響應的驗證,萬一API返回任何錯誤的錯誤代碼等。

    負載測試-在API處理大量數據并同時有一定數量的用戶使用應用程序的情況下,這種類型的測試是必需的。 這會同時增加API命中率,并且可能會崩潰并且無法承擔該負載。

    安全測試-安全測試尤其重要,因為使用API??在兩個不同的應用程序之間創建鏈接。 使用API??的核心目的是使應用程序的數據庫抽象或隱藏。 這可能包括測試用例,例如授權檢查,會話管理等。

    互操作性測試-這是為了測試應用程序應該可以訪問的API。 這適用于SOAP API。

    WS合規性測試-已對API進行測試,以確保正確實施和利用WS-Addressing,WS-Discovery,WS-Federation,WS-Policy,WS-Security和WS-Trust等標準

    滲透測試-這是從外部資源中查找API的漏洞。

    Web服務/ API協議-

    如果我們談論網絡服務,則主要有兩種類型的服務,或者我們可以說協議:

    REST - REST代表RE表象小號大老貿易交接相比,SOAP這意味著它要克服一切與SOAP的問題,這是塊新的。 REST是一種輕量級協議,它使用URL來獲取所有必需的信息。 它使用四種HTTP方法執行任務-

  • 獲取-獲取信息。 例如,在使用位置映射API的情況下獲取經度和緯度。
  • 后-在資源中插入一些數據。
  • 放置-更新資源。
  • 刪除-從資源中刪除。
  • REST由于其簡單輕巧的體系結構,如今已越來越多地使用。

    SOAP API-支架使用S imple?bject 一個 CCESS P rotocol。 它使用XML進行消息交換。 執行此任務所需的所有信息均以其WSDL(Web服務描述語言)給出。 SOAP由于其廣泛使用的標準和XML而非常笨重。 SOAP相對于Rest的主要優點是它具有內置的錯誤處理功能,并且可以與其他協議(例如SMTP)一起使用。

    API測試和自動化工具

    有幾種工具可以測試API。 當測試人員測試API時,他們必須索要其文檔,無論是REST還是SOAP API還是其非基于Web的API,都應該始終有一個文檔,其中應寫有詳細信息。 進行API測試-

  • 索取文件
  • 首先編寫功能或服務級別案例
  • 編寫集成測試
  • 當API足夠穩定并通過上述大多數測試時,請執行安全性,性能和負載測試。
    • 典型的API文檔具有與該API相關的所有信息,例如其請求格式,響應,錯誤代碼,資源,強制性參數,可選參數,標頭等。該文檔可以通過各種工具(例如,開源,Dapperdox, ReDoc等
    • 之后,嘗試為API編寫服務級別案例。 例如,如果某個API使用n個參數來獲取響應,其中m是強制性參數,其他是可選參數,則一個測試用例應該是嘗試使用不同的參數組合并驗證響應。 另一個測試用例可能會驗證標頭,并嘗試在不通過身份驗證的情況下運行API,并驗證錯誤代碼。
    • 接下來是集成測試步驟,您需要在其中測試API及其所有從屬API或功能。 這還包括測試API響應,應返回給另一個API或方法的數據以及該API失敗時會發生的情況。
    • 一旦API穩定并且幾乎完成功能測試,測試人員就可以執行負載,安全性和性能測試。

    API自動化

    我們經常需要自動化重復執行的測試用例 對于例如-回歸案例。 同樣,在進行API測試的情況下,在某些情況下我們可能需要在每個版本之前執行,并且這些情況可以自動化。

    有許多用于API自動化的工具,它們非常流行-

  • 湯UI
  • 卡塔隆工作室
  • 郵差
  • 捷米特
  • 放心
  • CloudQA TruAPI
  • SOUP UI-這是非常流行的API測試工具。您可以使用SoapUI對API進行功能,負載,安全性和合規性測試。

    Katalon Studio-建立在Selenium和Appium的頂部,Katalon Studio是一個免費且功能強大的自動化測試工具,用于Web測試,API測試和移動測試。

    Postman-郵差是免費的,可以幫助您更有效使用API時。 它具有開發和測試API的所有功能。

    Jmeter-盡管Jmeter主要用于性能和負載測試,但在很大程度上也可以用于API功能測試。

    RestAssured- Rest-Assured是一個基于Java的庫,用于測試RESTful Web服務。該庫可以包含在現有框架中,并直接調用其方法以json格式獲取響應,然后執行所需的操作。

    我以一個示例來說明基本API功能測試所遵循的步驟,這里我使用的是CloudQA提供的TruAPI工具,該工具是新的并且越來越受歡迎-

    步驟1-要運行API請求,您需要首先選擇“方法類型”并粘貼API的URL。 按發送按鈕將請求發送到API或按添加API測試按鈕保存請求-

    試試這個樣本方法類型和API URL

    • 方法類型: GET
    • APIURL:https://um5fdww2pj.execute-api.us-east-1.amazonaws.com/dev/todos


    步驟2:API請求信息:

    • 大多數API需要其他輸入來執行請求,例如參數,標頭,Body(JSON)等。
    • 要添加請求的參數,您可以選擇相應的“ 參數”選項卡,然后按“ 添加參數”按鈕以添加所需的信息。

    第3步:發送帶有身份驗證的API請求:

    • 如果您的托管API需要身份驗證,則可以轉到“授權”選項卡,然后從下拉列表中選擇“ BasicAuth ”(默認設置為“ Noauth”),然后輸入用戶名和密碼。 現在您可以發送經過身份驗證的請求了。
    • 每個API響應均包含不同的值,例如狀態代碼,正文,標頭和完成API請求的時間。 下圖顯示了如何描述收到的API響應。

    添加斷言:

    • 在自動化過程中,使用斷言驗證輸出非常重要。 要在API運行程序中添加斷言,請轉到“斷言”選項卡。 您可以在此處添加一個或多個斷言。
    • 請按照以下步驟添加斷言:
      • 選擇回應類型
    • 您已經添加了斷言

    變量:

    • “變量”選項卡對于存儲作為已發送的API請求的響應而接收的值很有用。 若要保存響應,請轉到“變量”選項卡,然后執行以下步驟:
      • 添加變量

    查看或執行已保存的API請求:

    • 當您進入API Runner頁面時,請使用“查看保存的測試”按鈕查看保存的測試
    • 選擇一個或多個保存的API測試,并默認運行選定的測試,這些測試將顯示上一次執行的運行狀態信息
    • 結果將顯示API執行歷史記錄

    這是單一的API執行和自動化。 對于現實世界的場景,我們經常需要創建包含所有回歸測試用例的API套件,并將其作為回歸測試的一部分來運行。 在敏捷中,準備好一套西裝以使其能夠與CI和CD集成至關重要。

    CloudQA附帶了有關該工具的非常豐富的文檔,CloudQA提供的所有工具都符合“無代碼自動化”的思想,并且對于手動測試人員而言非常易于使用。

    文檔鏈接-https://doc.cloudqa.io/TruAPI.html

    從邏輯上講,我們可以將整個系統分為三層:

  • 表示層–這是向最終用戶開放的用戶界面(GUI)。 質量檢查人員在此層執行功能測試。
  • 業務層-這是編寫邏輯的應用程序用戶界面。 用技術術語來說,這就是代碼/算法所在的地方。 API在這一層中得到體現。
  • 數據庫層-存在應用程序數據的位置。

  • 翻譯自: https://www.javacodegeeks.com/2019/01/api-testing-automation-essential-guide.html

    api自動化測試

    總結

    以上是生活随笔為你收集整理的api自动化测试_API测试和自动化101:基本指南的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。