一款自動化測試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)
- 響應的消息體(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使用示例,請參考
相關的技術資料來獲得更多的使用示例和幫助。