我正在爲尚未公開的HTTP API編寫客戶端。 根據我得到的規範,我嘲笑了一個模擬API的服務器,來測試我的客戶端如何反應。模擬HTTP API客戶端的高負載
該服務器是一個非常簡單的Rack應用程序,當前運行在WEBRick上。 API客戶端與此僞造API進行交互,並在不同的測試用例中正確執行。
希望我只需在API生效時更改配置文件中的主機名。
但是,我知道一個事實,即API將在重負載時投入使用。我的客戶將因此最有可能不得不面對:
- HTTP超時
- 抖動
- 丟棄的TCP連接
- 503迴應
- ...
我知道,我的客戶在理想情況下表現良好,但我怎樣才能隨機(或不是隨機)在我的測試用例中引入這些行爲,以驗證客戶端是否處理了這些錯誤直接?
是否有某種反向代理可以配置爲在穩定網絡上的穩定服務器上提供數據時模擬這些錯誤(本例中爲localhost上的本地服務器)?