接口測試框架Rest-assured搭建與實戰(zhàn)【附源碼】
現(xiàn)在,越來越多的 Web 應用轉(zhuǎn)向了 RESTful 的架構(gòu),很多產(chǎn)品和應用暴露給用戶的往往就是一組 REST API,這樣有一個好處,用戶可以根據(jù)需要,調(diào)用不同的 API,整合出自己的應用出來。從這個角度來講,Web 開發(fā)的成本會越來越低,人們不必再維護自己的信息孤島,而是使用 REST API 互聯(lián)互通。那么,如何確保 API 的穩(wěn)定性與正確性呢?全面系統(tǒng)的測試是必不可少的,除了常見的postman、jmeter等接口測試工具外,今天給大家介紹一款非常火爆的接口測試框架Rest-Assured。
Rest-Assured 是一套由 Java 實現(xiàn)的 REST API 測試框架,它是一個輕量級的 REST API 客戶端,可以直接編寫代碼向服務器端發(fā)起 HTTP 請求,并驗證返回結(jié)果;它的語法非常簡潔,是一種專為測試 REST API 而設計的 DSL。使用 Rest-Assured 測試 REST API,就和真正的用戶使用 REST API 一樣,只不過 Rest-Assured 讓這一切變得自動化了。
官網(wǎng)地址:?http://rest-assured.io/
官方文檔:?https://rest-assured.io/#docs
github項目地址:?https://github.com/rest-assured/rest-assured
一、Rest-Assured框架搭建步驟
1.1 打開idea創(chuàng)建項目,選擇maven相關設置點擊下一步
?
1.2 輸入包名及項目名稱點擊下一步
?
1.3 選擇maven相關信息,點擊下一步
?
1.4 項目名稱和項目位置,一般默認就可以,點擊完成
?
在項目的pom.xml中增加Rest-Assured的依賴包
?
?
3.1 接口業(yè)務介紹
案例我們將采用碼同學全棧接口項目來進行實戰(zhàn)操作
?
圖示中的四個接口分別表示的業(yè)務是:
Get接口:根據(jù)id獲取手機信息
POST接口:增加一個手機信息
3.2 測試代碼
在src/test/java下創(chuàng)建一個包,起名叫phone,在該包下創(chuàng)建一個PhoneApiTests類
,代碼如下:

執(zhí)行結(jié)果如下:
?
3.3 代碼解釋
l given() 是RestAssured類下一個方法,所以官方文檔強烈推薦我們使用靜態(tài)導入語句;網(wǎng)絡請求所需要的條件都寫在這里,頭信息、請求參數(shù)
l?get方法,里面參數(shù)是url,用來發(fā)送請求
l?post方法,里面參數(shù)也是url,用來發(fā)送請求
l?then() 又是一個方法,可以理解成執(zhí)行請求后要做什么事情
l?statusCode(200) 這個方法名稱就看得出來,是判斷響應狀態(tài)碼是不是等于200
整個代碼的意思我們可以連起來,以其中的post接口為例:
發(fā)起一個post請求,他的content-type是json,參數(shù)是xx,執(zhí)行后針對響應狀態(tài)碼做斷言
現(xiàn)在討論下這種寫法的好處,什么寫法,就是一個方法后面利用點串聯(lián)起來,形成一個像自然語言的句子一樣。這種特點,有點像lambda表達語法效果。除了這個,也有一點像groovy這種膠水語言。通過這個例子,我明白了Rest Assured首頁的這句話的含義。

二、使用rest-assured框架優(yōu)雅實現(xiàn)接口測試斷言
Appium移動端自動化測試--基礎預熱 Appium移動端自動化測試--搭建測試環(huán)境 Appium移動端自動化測試--錄制測試用例并運行 Appium移動端自動化測試--使用IDE編輯并強化腳本 Appium移動端自動化測試--控件定位方法 Appium移動端自動化測試--元素操作與觸摸動作 Appium移動端自動化測試--搭建模擬器和真機環(huán)境 Appium移動端自動化測試--測試用例改造 Appium移動端自動化測試--capability使用和常用設備交互命令
軟件自動化測試交流群已創(chuàng)建,公號回復入群即可獲取入群二維碼。









