介面自動化大牛養成記
對於大多數未做過介面測試的同學來說,可能並不清楚介面到底是什麼,甚至你去問很多做過介面測試的同學什麼是介面,他們也說不出個所以然,
大多數人可能知道介面大概是什麼,也知道怎麼測,但是不知道如何用專業的術語去描述出來。
介面的本質:介面就是一個函式,通過將介面部署到web容器(tomcat,jboss,weblogic等),釋出服務後,就可以通過一個url地址去訪問到介面了。
而介面文件裡面描述的介面引數呢其實就是函式的引數,介面的返回資料就是函式的返回值。
即:介面=函式,介面引數=函式引數,介面返回值=函式返回值。
以如下介面專案中的“獲取使用者列表”介面為例:(http://119.23.241.154:8080/futureloan/mvc/api/member/list),
它其實就對應了後臺的一個這樣的一個同名函式:
介面測試跟ui測試的本質區別:
UI測試更專注於ui頁面,而不關注系統內部實現,一個功能模組是否有bug,所有的判斷依據都直接來自於前端頁面反饋,跟我們的預期對比,一樣就測試通過,不一樣就是bug。
而介面不一樣,需要藉助某些客戶端工具模擬前端頁面傳送介面請求,測試人員通過判斷介面返回資料與預期是否一致,對測試人員的技術要求更高。
介面測試到底是在專案哪個階段去做?
介面測試可以在專案的任意階段做,只要介面已經開發出來了,提前介入,就能提前發現問題,不管系統是不是已經將頁面與後臺介面整合了,專案時間充足的前提下都最好對介面進行一輪或者多輪測試,
基於兩點原因:
1)某些請求如果繞過前端直接往介面傳送非法資料,而介面也有相應處理措施,那麼將最大限度的降低了系統的風險;
2)後端控制好了,所有的問題就集中與前端這一塊了。
手工測試介面有哪些工具:
Postman,jmeter,Soapui,Fiddler等主流的工具都能完成。
什麼是介面自動化? 通過程式碼驅動測試而非人工。
為什麼需要做介面自動化? 通過機器來替代人工,解放生產力。
如何做介面自動化? 通過http技術處理介面呼叫。
介面自動化環境如何搭建:
1.建立maven專案,為什麼用maven專案,最重要最直接的原因是希望maven來管理我們們的專案依賴,這樣我們就不需要滿世界的找各種jar包去下載了。
2.整合HttpClient,在maven專案引入HttpClient-4.5.2這個框架的依賴,這個框架提供了一些http技術可以幫助我們們去發起介面呼叫並處理介面返回資料,以下是依賴描述。
org.apache.httpcomponents
httpclient
4.5.2
3.整合testng,利用testng這個測試框架來幫助我們們來更好的管理測試類,以及它提供了豐富的註解,方便我們們去實現多場景測試設計。以下是依賴描述。
org.testng
testng
6.8.8
test
4.至於專案的其他依賴在後面的介面自動化框架實現過程中再給大家補充,本節只為實現一個最簡單的環境和一個介面呼叫案例。
小試牛刀:
通過http技術post一次介面請求,完成對於註冊介面的呼叫,並得到介面返回資料。程式碼如下:
總結:以上程式碼是一個簡單的案例,離我們的介面自動化框架還差十萬八千里。後面的篇章將帶大家逐漸去完善這個框架,大家敬請期待。
下一篇專注於以下單介面測試到多介面的過渡以及以下圖中的兩個問題:
歡迎大家留言,提問,送自動化公開課等視訊哈。覺得不錯就點個贊吧
測試技術分享群:313782132
相關文章
- 華為測試大牛Python+Django介面自動化怎麼寫的?PythonDjango
- 智慧化養豬自動飼餵系統都由哪些部分組成
- Httpclient 介面自動化HTTPclient
- 全自動化介面
- 介面自動化與ui自動化區別UI
- 介面自動化測試
- python 介面自動化Python
- 領域驅動設計(DDD)高手養成記
- 介面自動化Python+requests踩坑記錄Python
- 介面自動化之介面整理(抓包)
- 軟體測試大牛成長記
- JMeter 介面自動化測試(手工轉自動化指令碼)JMeter指令碼
- 介面自動化之實現日誌記錄封裝封裝
- python 介面自動化測試Python
- 三.介面自動化專案1
- 介面自動化測試框架 HttpFPT框架HTTP
- 二、介面自動化測試(2)
- protobuf 介面自動化測試摸索
- 「乾貨」介面自動化實踐:高效智慧介面場景自動巡檢方案
- 介面自動化如何處理介面依賴問題
- pytest+allure+yaml介面自動化測試問題記錄YAML
- 介面自動化報告的問題
- 介面自動化(四):框架搭建(Python)框架Python
- 基於RestAssured實現介面自動化REST
- Django 介面自動化測試平臺Django
- 介面自動化測試解決方案
- 介面自動化測試 - RobotFramework RESTinstanceFrameworkREST
- 介面自動化實戰之框架搭建框架
- 大家都用什麼做介面自動化
- JMeter介面自動化發包與示例JMeter
- 使用 testng 做介面自動化測試
- jmeter介面自動化:登入到新增JMeter
- 四.unittest介面自動化框架介紹框架
- 【pytest 介面自動化】token 問題
- 技術大牛養成指南,一篇不雞湯的成功學實踐
- 定製龍頭索菲亞養成記:專業化、規模化、個性化
- Jmeter 介面自動化連載 (13) - 自動生成測試報告JMeter測試報告
- Python介面自動化——檔案上傳/下載介面Python