“閱讀本文大概需要 15 分鐘,文末有福利”
在前面幾期我們已經把什么是介面測驗講完了,相信看過那一篇文章的小伙伴已經了解了什么是介面,什么是介面測驗,為什么要做介面測驗?以及它的底層原理與如何實作,
那么我們今天再來深入了解一下如何從介面測驗提升為介面自動化大咖?
我們先來了解一下常見的介面型別
一、根據協議區分
1、webService介面:是走soap協議通過http傳輸,請求報文和回傳報文都是xml格式的,我們在測驗的時候都用通過工具才能進行呼叫,測驗,可以使用的工具有SoapUl.jmeter、loadrunner等;
2、 http介面:是走http協議,通過路徑來區分呼叫的方法,請求報文都是key-value形式的,回傳報文一般都是json串,有get和post等方法,這也是最常用的兩種請求方式,可以使用的工具有postman、RESTClient、jmeter.、loadrunner等;
http介面與Webservice介面的區別:
1.使用的協議有點區別webservice用的soap協議
http用的是http協議
2.傳輸資料的報文格式不一樣: webservice用的xm1格式
http用的比較多的是htm1格式,json格式,xm1格式web端一般用的都是html格式,App端用的都是json格式
3.共同點都需要用到工具去進行測驗
常用的介面測驗工具:soapui , Meter,postman
二、按照功能區分
-
同步介面
同步介面我們可以理解,你們去買票,你付款,相當你發送一個請求,那么你回立馬要求他給你一張票,給你一張票相當于回傳資料,那么同步介面有實時性,你發送請求,需要他在有限的時間內立馬回傳資料,沒回傳資料就交易失敗,回報錯,那么售票員回反饋交易失敗的原因
總結:
1、同步介面實時互動的
2、同步介面有時間限制,超過有限時間,就回報錯timeout
-
異步介面
異步介面可以理解為,你找黃牛買票,你給錢給到黃牛,把你的要求和聯系方式告訴黃牛,黃牛告訴你收到資訊和錢了,這個時候你不要等他回傳了,你就可以干其他的事情去了,OK黃牛也接很多人的單子,他把單子放在這里,然后按照名單上面的資料一個一個去完成,完成了,他就會打電話告訴你,你票買到了,那么這個就是異步介面
案例:我們行程去提交訂單,他回傳訂單ID給我們,我們通過訂單查看結果,這個訂單有沒有完成,比如我們經常遇到界面顯示在處理中,,,,
總結:
1、異步介面互動不是實時的
2、異步介面你需要實時去查詢,通過呼叫另一個介面查看結果,或者你給他們一個回呼的地址,他做完之后通過這個地址回傳資訊給你
介面測驗重點
1、根據什么去測驗接介面,怎么做介面測驗
介面就是我們對接的一個入口,你通過我這個入口使用我們的功能,比如你通過我電腦的USB介面,你可以使用和usb相關的功能
2、首先熟悉介面功能,根據功能去設計測驗
那么你測驗這個介面,你必須知道這個介面實作什么樣的功能,比如這個是一個登錄介面,還是一個查詢介面的介面,還是什么功能的介面,那么你理解功能了,那就好辦,首先根據功能去做測驗場景設計,比如登錄,那么功能就是通過用戶名和密碼,正確的登錄成功,錯誤的登錄失敗,那么你就要測驗這兩個場景,
3、根據請求資料要求去設計測驗
那么你剛剛測驗登錄介面,你知道輸入兩個資料,用戶名和密碼,也就是說,你知道這個功能要輸入兩個資料,假如需要驗證嗎,是不是要測驗三個資料,那么你測驗介面,那么你必須知道這個介面請求引數有幾個,每個引數要求(這個資料必填,長度,格式,型別等,比如我們以前玩游戲機,投入游戲幣,那么有些人就投如鐵塊,硬幣,本來投入1塊,我投入5毛錢等等,其實你就知道他的要求,然后設計符合要求的場景,和不符合要求的場景驗證他的功能
4、回傳資料是否要測驗呢
大部分作為檢查,根據不同的要求有些需要測驗設計
總結:介面測驗重點是測驗這個功能,這個功能測驗設計是重點,然后是根據請求資料要求,前提你必須熟悉這個功能,和這個介面請求資料要求
介面檔案包含哪些內容
-
介面名字
-
描述(描述清楚介面的功能)
-
url
-
請求方式
-
傳入引數
-
回傳值
為什么企業熱衷介面測驗
1、當我們專案前端沒有開發出來時候,后端已經完成,我們可以先測驗介面,測驗可以前移
2、介面是后端提供的,后端基本是演算法和業務邏輯實作,提前測驗發現的bug,且bug都是比較嚴重的,更能保證軟體質量,提前發現業務邏輯和演算法問題,更能提前發現風險,修改的代價比較小點,后期發現bug修改代碼比較大
現在主流介面測驗工具
-
jmeter
主要做介面功能和介面性能,介面自動化
-
postman
主要實作介面功能和介面自動化
-
aipfox
主要實作介面功能和介面自動化,性能
-
soapui
主要介面功能,正對webservice協議介面效率比較高
為什么介面需要通過工具去執行測驗?
介面是直接通過介面地址呼叫,直接把請求資料放在協議里面,把資料直接發送到后端服務,因為你是直接測驗后臺服務,沒有前端界面,那么介面工具就做一個可以輸入資料的地方,方便編輯請求資料,方便查看回傳結果沒有工具,你只能通過代碼去設計發送請求,所以工具提高我們測驗效率,選擇工具測驗是我們比較理想的選擇

ROBOT實作介面自動化 VS python自動化
1、Robot Framework是為“測驗”而生,他的目標人群是測驗工程師,它的目標和使命注定了Robot Framework必須要簡單/簡潔/親民/易懂,
而這些Robot Framework都做到了,這使得Robot Framework推出之后,得以快速發展傳播,
他生態鏈里面的測驗庫有的功能,他都支持,常用的UI、APP、介面自動化,包括連接資料庫,操作linux等,都能實作,只要能開發測驗庫,
或者安裝官方的測驗庫就可以實作特定的自動化,因為這是一個自動化平臺
2、RF好處:有界面易操作,有豐富的第三方庫,比如我們做web自動化呼叫的就是seleniu2library庫
os android, httprequset,swing data,自己到官網上面去看下
效率來說,高很多,我們只要熟悉第三方庫的關鍵字,就可以寫好自動化化,不需要我們自己去封裝
3、RF框架可以很好的組織用例,左邊有個目錄樹支持中文,層次和結構非常清晰,直觀,方便、易使用:比如你除錯一個用例,寫代碼去除錯,還要屏蔽其他的用例@unittest.skip('skip is upper.'),RF框架,你想運行哪一個,你就勾選哪—個,撰寫效率高,方便組織用例
RF框架里面的報告非常詳細,報錯在那一步報錯,都非常清晰,成功多少,錯誤了多少,都比較直觀
還是沒聽懂?沒關系!
公眾號:程式員一凡 免費領取視頻教程
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/237947.html
標籤:其他
上一篇:十一、TestNG依賴測驗
