測試服務器搭建系統,Moco 0.8 發布
Moco是一個可以輕松搭建測試服務器的框架/工具/程序庫。
Moco在程序庫設計包括兩個方面,如何設置服務器和如何讓服務器運行起來。
先說簡單的,如何讓服務器運行。最簡單的選擇是讓用戶自己啟動服務器,然后,在測試結束之后關閉服務器。
我很高興地宣布,Moco第二個正式版本0.8發布了。
Moco是什么?
Moco是一個可以輕松搭建測試服務器的框架/工具/程序庫。
特性變更
本次發布有一個重大的新特性,支持工程配置文件(Global Settings)。
我們可以通過它,將一個復雜的Moco配置文件分解成多個配置,然后,通過這個配置文件將它整合起來:
[
{
"include" : "foo.json"
},
{
"include" : "bar.json"
}
]
(settings.json)
這個配置文件還支持幾個不同的選項,讓我們在開發時有更靈活的變化:
- 支持Context:我們可以把不同的服務,部署到不同的context路徑下,實現由一個Moco服務器,模擬多個服務。
- 支持File Root:我們可以配置文件根目錄,這樣一來,每個具體配置文件內,所有與文件相關的路徑都可以寫成相對路徑。
- 支持Environment:通過指定環境變量,同一套配置在不同的環境下,由不同的部分起作用,這樣就可以開發代碼無需任何調整,就可以得到不同的效果。
本次還包含一些API的變化:
- Proxy:可以將請求(包括請求的所有信息,比如內容、頭燈)轉發給另一個服務器,還可以通過配置failover文件,用以故障恢復,在遠程 服務器失敗,無法返回時,從failover文件中提取請求內容進行返回。目前failover文件是JSON格式,可以手工編輯。
- JSONPath:請求內容按照JSONPath進行匹配。
- with:在API上增加with,用以進行Resource到ResponseHandler的適配。
- 移除url:用Proxy代替。
- 移除cache:用failover代替。
- 移除content:用with代替。
本次發布還有一個實驗性的新特性:模板,用以根據請求定制應答。目前包含有
- 請求版本:${req.version}
- 請求方法:${req.method}
- 查詢參數:${req.queries['foo']}
- 請求頭部:${req.headers['foo']}
- 請求內容:${req.content}
這個特性還在進一步探索中,歡迎反饋各種問題。
感謝
感謝nezhazheng,為Moco貢獻JSONPath實現。
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!