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使用示例,請參考相關的技術資料來獲得更多的使用示例和幫助。