本文以Api測試為例,為大家介紹Api測試的技巧、Api測試的流程以及測試的方法和工具,閱讀完整文相信大家對Api測試技巧有了一定的認(rèn)識。
API測試是一種直接在API級別執(zhí)行驗證的軟件測試。它是集成測試的一部分,它確認(rèn)API是否滿足測試人員對功能、可靠性、性能和安全性的期望。與UI測試不同,API測試是在沒有GUI層執(zhí)行操作的。
API測試技巧
Web API有兩大類Web服務(wù):SOAP和REST。
SOAP(簡單對象訪問協(xié)議)是W3C標(biāo)準(zhǔn)定義的一種標(biāo)準(zhǔn)協(xié)議,用于發(fā)送和接收Web服務(wù)請求和響應(yīng)。
REST(表示狀態(tài)傳輸)是使用HTTP的基于Web標(biāo)準(zhǔn)的體系結(jié)構(gòu)。與基于SOAP的Web服務(wù)不同,沒有針對RESTful Web API的正式標(biāo)準(zhǔn)。
以下是API測試的10條基本技巧:
指定API輸出狀態(tài)
您需要在API測試中驗證的最常見的API輸出是響應(yīng)狀態(tài)代碼。
新API測試人員熟悉驗證響應(yīng)代碼是否等于200以確定API測試是通過還是失敗。這不是錯誤的驗證。但是,它并不反映API的所有測試方案。
在通用標(biāo)準(zhǔn)中,所有API響應(yīng)狀態(tài)代碼均分為五類。狀態(tài)碼的第一位數(shù)字定義響應(yīng)的類別。后兩位沒有任何類別或分類作用。
第一位數(shù)有五個值:
?1xx(信息性):收到請求并繼續(xù)進(jìn)行處理
?2xx(成功):成功接收,理解并接受了請求
?3xx(重定向):需要采取進(jìn)一步的措施來完成請求
?4xx(客戶端錯誤):請求包含錯誤的語法或無法實現(xiàn)
?5xx(服務(wù)器錯誤):服務(wù)器無法滿足看似有效的請求
API的實際響應(yīng)狀態(tài)代碼由構(gòu)建API的開發(fā)團隊指定。
專注于小型功能性API
在測試項目中,總是有一些簡單的API,只有一個或兩個輸入,例如登錄API,獲取身份令牌API,運行狀況檢查API等。但是,這些API是必需的,被視為進(jìn)入其他業(yè)務(wù)的“門API”。首先關(guān)注這些API,將確保API服務(wù)器,環(huán)境和身份驗證正常工作。
還應(yīng)該避免在一個測試案例中測試多個API。如果發(fā)生錯誤,這是很痛苦的,因為您將不得不按順序調(diào)試API生成的測試數(shù)據(jù)。保持測試盡可能簡單。在某些情況下,如果需要調(diào)用一系列API來實現(xiàn)端到端測試流程,這些任務(wù)應(yīng)該在所有API都經(jīng)過單獨測試之后完成。
分類API
一個測試項目可能有幾個甚至數(shù)百個用于測試的API。強烈建議將它們分類,以更好地進(jìn)行測試管理。它需要采取額外的步驟,但是將大大幫助您創(chuàng)建具有高覆蓋率和集成度的測試方案。
同一類別的API共享一些公共信息,例如資源類型,路徑等。以相同的結(jié)構(gòu)組織測試將使您的測試在集成流程中可重復(fù)使用和擴展。
利用自動化功能進(jìn)行API測試
盡可能早地利用自動化進(jìn)行API測試。以下是自動化API測試的一些重要好處:
?測試數(shù)據(jù)和執(zhí)行歷史記錄可以與API信息一起保存。這使得以后重新運行測試變得更加容易。
?API測試穩(wěn)定且較少更改。API反映了系統(tǒng)的業(yè)務(wù)規(guī)則。API的任何更改都需要明確的要求;因此,測試人員始終可以及時了解更改并進(jìn)行調(diào)整。
?與Web UI測試相比,測試執(zhí)行速度要快得多
?API測試被視為灰盒測試,用戶可以在其中發(fā)送輸入數(shù)據(jù)并獲取輸出數(shù)據(jù)以進(jìn)行驗證。數(shù)據(jù)驅(qū)動方法的自動化(即在同一測試場景中應(yīng)用不同的數(shù)據(jù)集)可以幫助增加API測試覆蓋率
選擇合適的自動化工具
利用API測試的自動化功能的另一步驟是從市場上的數(shù)百種選擇中選擇最合適的工具或一組合適的工具。選擇API自動測試工具時,應(yīng)考慮以下一些標(biāo)準(zhǔn):
1、該工具是否支持測試您的AUT(被測應(yīng)用程序)正在使用的API / Web服務(wù)類型?如果您在AUT使用SOAP服務(wù)時所選的工具支持測試RESTful服務(wù),則沒有任何意義。
2、該工具是否支持您的AUT服務(wù)所需的授權(quán)方法?以下是您的API可以使用的一些授權(quán)方法:No Auth、Bearer Token、Basic auth、Digest Auth、NTLM Authentication、OAuth 1.0、OAuth 2.0、Hawk Authentication、AWS Signature。這是一項必不可少的任務(wù),因為你無法在未經(jīng)授權(quán)的情況下開始測試API。
3、該工具是否支持從WSDL,Swagger,WADL和其他服務(wù)規(guī)范中導(dǎo)入API / Web服務(wù)端點?這是一項可選功能。但是,如果您要測試數(shù)百個API,這一點非常重要。
選擇合適的驗證方法
當(dāng)響應(yīng)狀態(tài)代碼告訴請求狀態(tài)時,響應(yīng)主體內(nèi)容就是API通過給定輸入返回的內(nèi)容。API響應(yīng)內(nèi)容因數(shù)據(jù)類型和大小而異。響應(yīng)可以是純文本,JSON數(shù)據(jù)結(jié)構(gòu),XML文檔等。通常,有一些驗證API響應(yīng)正文內(nèi)容的基本方法:
1、將整個響應(yīng)正文內(nèi)容與預(yù)期信息進(jìn)行比較,此方法適用于具有靜態(tài)內(nèi)容的簡單響應(yīng)。日期時間,增加的ID等動態(tài)信息會在斷言中引起麻煩。
2、比較響應(yīng)的每個屬性值,對于JSON或XML格式的響應(yīng),很容易獲得給定鍵或?qū)傩缘闹?。因此,此方法在驗證動態(tài)內(nèi)容或單個值而不是整個內(nèi)容時很有用。
3、比較匹配與正則表達(dá)式,與驗證單個屬性值一起,此方法用于驗證具有特定模式的數(shù)據(jù)響應(yīng)以處理復(fù)雜的動態(tài)數(shù)據(jù)。
創(chuàng)建正面和負(fù)面的測試
API測試需要正向測試和反向測試,以確保API正常運行。由于API測試被視為一種灰盒測試,因此兩種類型的測試均由輸入和輸出數(shù)據(jù)驅(qū)動。
正向測試:
驗證API是否已接收輸入并按要求中指定的那樣返回預(yù)期的輸出。驗證是否按要求指定返回了響應(yīng)狀態(tài)代碼,無論它返回的是2xx還是錯誤代碼。用最小的必填字段和大的字段指定輸入。
反向測試:
當(dāng)預(yù)期的輸出不存在時,請驗證API是否返回了適當(dāng)?shù)捻憫?yīng)。執(zhí)行異常輸入驗證測試。使用不同的授權(quán)級別驗證API的行為。
現(xiàn)場測試流程
建議在測試過程中安排每天的API測試執(zhí)行。由于API測試執(zhí)行快速,穩(wěn)定且足夠小,因此很容易以最小的風(fēng)險將更多測試添加到當(dāng)前測試過程中。
測試過程完成后,每天都可以得到這些測試的結(jié)果。如果發(fā)生失敗的測試,則可以立即檢查輸出并驗證問題以找到適當(dāng)?shù)慕鉀Q方案。
API自動化測試
API測試流程非常簡單,只需三個主要步驟:發(fā)送帶有必要輸入數(shù)據(jù)的請求;獲取具有輸出數(shù)據(jù)的響應(yīng);驗證響應(yīng)是否按要求返回
API測試最重要的部分既不是發(fā)送請求也不是接收響應(yīng)。它們是測試數(shù)據(jù)管理和驗證。通常,測試一些第一個API非常簡單。因此,API測試任務(wù)很容易被低估。在常規(guī)手段方法無法達(dá)到你的目的時,使用編程技能可以極大拓展API測試的邊界。
看完上述內(nèi)容,你們對Api測試有進(jìn)一步的了解嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
新聞標(biāo)題:Api測試有哪些技巧-創(chuàng)新互聯(lián)
文章分享:http://jinyejixie.com/article22/dpphcc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、ChatGPT、企業(yè)網(wǎng)站制作、自適應(yīng)網(wǎng)站、用戶體驗、外貿(mào)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容