Wisdom RESTClient 一款自動化測試REST API的工具,它可以自動化測試RESTful API並生成精美的測試報告,同時基於測試過的歷史API,可以生成精美的RESTful API文件。
1. 使用RESTClient前的準備工作
1.1 下載RESTClient
JAR包: restclient.jar
;
1.2 使用前安裝Java
支援的Java版本 >=1.7
1.3 啟動RESTClient軟體
雙擊restclient.jar
,或者執行命令java -jar restclient.jar
啟動RESTClient軟體。
RESTClient主窗體包含:
- 請求檢視(Request)
- 響應檢視(Response)
- 歷史檢視(History)
- 選單欄(File, Edit, Test, Apidoc, Help)
2. 使用RESTClient測試REST API步驟
2.1 請求檢視中輸入REST API所需的請求資料
在請求檢視中對所測試的REST API輸入的資料詳情如下:
2.1.1 選擇請求方法
RESTClient支援請求方法詳情如下:
方法名 | 操作 | 備註 |
---|---|---|
GET | 查詢 | 無需要填寫請求體 |
POST | 新增 | |
PUT | 修改 | |
DELETE | 刪除 | 無需要填寫請求體 |
2.1.2 輸入訪問REST API的URL
-
URL格式:
HTTP協議://主機名:埠號/路徑
-
URL示例:
http://restclient.cn:8080/restapi
2.1.3 輸入請求體(Body)
如果選擇的請求方法是POST或者PUT則可以填寫請求體,其他方法則無需填寫。
2.1.3.1 選擇請求體型別(Body-Type)
-
字串(String)
直接在請求體的文字框中填寫字串;
-
檔案(File)
瀏覽並選擇地文字檔案,檔案內容會被讀取並作為請求體。
2.1.3.2 選擇內容型別(Content-Type)
根據REST API訊息體型別,對照下表,選擇跟API匹配的內容型別,如果表中的內容型別都不是API所需要的型別,可以直接在內容型別文字框中輸入所需型別。
常見的內容型別詳情如下:
內容型別(Content-Type) | 資料格式 |
---|---|
application/json | JSON |
application/xml | XML |
application/x-www-form-urlencoded | Form表單 |
text/plain | 純文字 |
text/xml | XML文字 |
text/html | HTML文字 |
multipart/form-data | 用於上傳檔案 |
application/xhtml+xml | XHTML |
2.1.4 選擇字符集(Charset)
預設字符集是UTF-8,可以選擇REST API所需要的字符集,如果下拉選單裡的字符集都不是API所需要的,可以直接在字符集文字框中輸入所需的字符集。
2.1.5 填寫訊息頭(Header)
可以根據REST API定義要求,以鍵值對的形式新增相應的訊息頭。
Header鍵值對示例:
Key : Accept
Value : application/json
複製程式碼
2.1.6 填寫Cookie
可以根據REST API定義要求,以鍵值對的形式新增相應的Cookie。
如果API需要登入認證,請先使用瀏覽器完成API登入認證成功後,將瀏覽器生成的JSESSIONID填寫到Cookie中,這樣就可以無需登入認證,直接訪問REST API了,免登陸使用詳情參考資料。
Cookie鍵值對示例:
Key :JSESSIONID
Value : MY0REST1COOKIE2DEMO3
複製程式碼
2.1.7 完整的請求資料示例
填寫完請求資料後點選Start按鈕會觸發API請求,在請求檢視中輸入完整的請求資料如圖所示:
2.2 響應檢視中返回REST API響應的資料
REST API請求完成後得到響應資料如下:
- 響應狀態碼(Status)
- 響應訊息體(Body)
- 響應訊息頭(Header)
- 原始的響應資料(Raw)
響應資料如圖所示:
2.3 歷史檢視中記錄測試過的REST API
在歷史檢視中可以對API進行的視覺化編輯如下:
- 重新整理API
- 對選中的API進行順序調整
- 刪除選中的API或者清空全部歷史API
- 可以編輯選中的API
歷史API視覺化編輯的快捷選單如圖所示:
2.4 對歷史REST API進行再測試
如果需要對歷史API進行再測試,在RESTClient選單欄點選 Test => Start Test
記錄的歷史API測試完成後,在Windows系統中會使用預設的瀏覽器開啟測試報告。其他系統可以根據提示框中的報告路徑,手動開啟測試報告。
測試報告如圖所示:
2.5 對歷史REST API生成API文件
如果需要生成API文件,在RESTClient選單欄點選 Apidoc => Create
API文件生成完成後,在Windows系統中會使用預設的瀏覽器開啟API文件。其他系統可以根據提示框中的文件路徑,手動開啟API文件。
API文件如圖所示:
2.6 對歷史REST API進行編輯
為了滿足API再測試要求或者滿足API文件資料要求,可以對API進行如下操作:
- 調整API順序
- 刪除冗餘的、廢棄的API
- 對API進行視覺化編輯
歷史檢視中選中API,快捷選單中選擇Edit
開啟API編輯窗體,如圖所示:
在API編輯窗體中,可以編輯如下內容:
- 請求方法
- 請求URL
- 請求頭(Header)
- 請求體(Body)
- 響應狀態碼(Status)
- 響應的訊息體(Text檢視)
- 是否校驗返回的訊息體(Assert Body)
預設勾選了Assert Body
,API再測試會對返回的訊息體進行完整匹配校驗,如果不需要對返回的訊息體進行匹配校驗,可以去勾選。
如果返回的訊息體中的某些JSON節點不需要進行再測試匹配校驗,可以在Viewer
檢視上勾選排除這些節點,這樣API再測試只對未排除的節點進行匹配校驗。
2.7 定製API文件
如果生成的API文件不能滿足要求,需要改動,可以修改資料檔案work/apidoc/js/apidata.js
來定製API文件,API定製詳情可以參考資料。
2.8 通過命令列(CLI)方式使用RESTClient實現自動化測試REST API
RESTClient支援通過執行命令的方式啟動和再測試API以及生成API文件,RESTClient CLI使用詳情參考資料。
通過CLI方式,這樣很容易在Jenkins中定時執行命令來排程RESTClient進行API再測試,從而實現自動化測試REST API和生成REST API文件。
3. 問題諮詢與幫助
使用RESTClient過程中遇到問題可以檢視RESTClient日誌檔案:work/log/rest-client.log
,這樣很容易排查出問題的具體原因。
更多的RESTClient使用示例,請參考相關的技術資料來獲得更多的使用示例和幫助。