我正在編寫使用具有非常類似屬性的各種REST API端點的應用程序。唯一的區別在於端點地址和有效負載。標題,方法和其他內容保持不變。這就是爲什麼我創建的類與我的遠程主機進行通信,它被稱爲RestApiCommunicator
有方法generateRequestAndCallEndpoint(List payload)
一個包裝有效載荷與執行REST調用所需的所有必需的東西。 比,我有各種各樣的類只調用這個通信器類與適當的端點後綴其資源。 一切工作正常,但我想單元測試所有這些類。我試圖通過閱讀很多SO問題來弄清楚如何做到這一點,但它們是相當複雜的案例,我很簡單。 我想一個適當的方式找出該單元測試類,看起來像這樣的:單元測試類僅使用局部變量進行組合
class MyRestClient {
public void useRestApi(List<MyResources> myResources) {
RestApiCommunicator restApiCommunicator = new RestApiCommunicator ("/some/endpoint");
restApiCommunicator.generateRequestAndCallEndpoint(myResources);
}
}
我想測試,如果溝通與適當enpoint ADRESS創建,如果generateRequestAndCallEndpoint
與我的樣品稱爲exacly一次有效載荷。
唯一的事情就是讓restApiCommunicator
一個字段,這個字段創建setter和單元測試嘲笑它。但是,在我看來,這是相當髒的解決方案,我不想修改我的代碼以允許測試。
也許你可以點我在一些地方的方向,我可以有這個類使用一些好的模式進行測試。
(PS如果關鍵 - 這是一個春天啓動的應用程序)