Hitchhiker 是一款開源的 Restful Api 集成測試工具,你能夠在輕鬆部署到本地,和你的team成員一塊兒管理Api。前端
先上圖看看:linux
背景是Team在開發一些Api,這些Api依賴於其餘Team的Api,依賴的Api是比較底層且比較大的,用起來不太方便且沒有詳細文檔。git
在開發Api的過程當中有一個問題讓我比較在乎,咱們Team是我先研究那個依賴的Api,過程不太容易,須要找文檔,找那個Team的人協做,找case 等,研究了一些後作了一些東西,後面隔了一段時間開始陸續有其餘同事參與進來,每進來一個都去研究一下那個Api,包括我作了其餘事情後再回來開發Api時又得找資料熟悉下,這個過程形成了很大程度的時間和經驗的浪費。github
因此我以爲應該有款工具能讓Team的人一塊兒協做開發Api,和Code同樣,每一個人研究的東西能夠保存下來方便其餘開發,這就是開發Hitchhiker的第一個引子。docker
後來,Api開始發佈出去,爲減小QA的工做量,須要作一個Api的自動化測試工具來保證數據準確性,但願能讓測試環境的數據和生產上的數據做對比,這樣保證新開發的Api不影響到舊的,測試專一於新功能就好,這是第二個引子。windows
Api的性能也是個關鍵的指標,在大規模使用前也須要對Api的性能作測試,因此性能測試是Hitchhiker下一個目標。後端
若是Api是公開的話,文檔是必須的,試想若是咱們依賴的Api文檔好的話不只咱們這邊容易,他們那邊其實也省事很多,至少咱們不用去頻繁打擾他們了。不過寫文檔過程是比較痛苦的且更新很麻煩,但若是Api的case都已經有了的話,文檔的主體其實就有了,而後對參數加些說明就能夠了,QA熟悉的話均可以幫着作,因此一個所見即所得而且支持模板的文檔也在計劃中。api
其實咱們以前也是有用過一些測試工具,但不是很滿意,就易用性來講,最好用的仍是Postman,因此Hitchhiker的UI就是模仿它的,用過Postman的話會很容易上手。服務器
Team協做開發Apisession
Api歷史修改記錄及支持diff展現
支持多環境變量及運行時變量,能夠處理Api依賴問題
參數化請求,把query/body裏的變化點提取出來,構建出參數列表,極大減小request的數量
支持Schedule及批量run
不一樣環境下的請求數據對比 (eg: stage vs product)
支持在數據對比前對數據進行處理
易部署 (支持 docker, windows, linux), 數據都存在本身這裏,不會上傳及丟失
會記往任何修改,不用怕沒保存時session失效或系統重啓
支持導入Postman v1 collections
性能測試 (開發中...)
Api文檔 (計劃中...)
首推使用 docker 部署,簡單快捷,具體操做參考 deploy with docker
若是沒有docker環境也能夠使用源碼部署,也很簡單
linux 請參考 deploy to linux
windows 請參考 deploy to win
參考 使用說明
先後端分離,前端採用 React + Redux + AntDesign,後端基於 Nodejs, 採用 Koajs + TypeORM + MySQL。
語言統一用的 Typescript。
測試前端用Jest,覆蓋了邏輯最多的 reducer,後端使用的就是本工具來測試本身,這對時間有限的我來講算是最有性價比的選擇。
能夠訪問 http://www.hitchhiker-api.com/ 來使用,點擊 try without login
免註冊登陸使用,另外,爲了免備案,服務器在海外的,因此速度上可能會有點慢,抽瘋時可能訪問不了,請諒解。
因此最好仍是在本地局域網部署,用起來會比較爽。
Github: https://github.com/brookshi/Hitchhiker, 以爲不錯的話麻煩 Star 支持下,謝謝。