Skip to content

Prism OpenAPI Mock Server

Prism 只需根據 OpenAPI Spec 就能建立 Mock Server,且支援參數檢核、動態生成 response、Validation Proxy 等功能。Validation Proxy 功能可以將 Prism 作為 request 跟實際 server 間的 proxy,並驗證 request 與 response 是否與 Spec 一致。

Mock testing 的目的是驗證待測目標跟其他模組互動時是否符合預期。在測試時相依的其他模組會用能模擬出相同行為的物件取代,透過這樣的方式就可以將待測目標獨立出來,而不會受到外部的相依影響。

Mock Server 能模擬實際 web service 的輸入與輸出,用於簡化集成測試,以及讓依賴關係的程式可以平行開發。以常見的前後端分離為例,當後端 API 還沒開發完成的時候,前端會需要一個可以暫時回應假資料(mock data)的 mock server。等到後端的 API 開發完成之後,前端只需要將 API endpoint 從 mock server 切回 actual server 就可以使用真實資料。

JSON Server 也是一款常用的 Mock Server,但僅能模擬 REST API,相較之下 Prism 能有更多的彈性。

prism 給定 OpenAPI Spec 即可啟用 Mock Server

prism postman Postman request sample

使用時需注意 OAS3 的 Server 跟 OSA2 的 Host + BasePath 都會被忽略,僅會使用 path 中的 URL 串接在 localhost 之後。

Reference:

  1. Mock Testing
  2. Prism Documentation

Comments