我正在嘗試為我的服務編寫一個測試,該測試與另一個從數據庫返回項目的服務建立連接。我的問題是我在測試中設置了連接屬性并啟動了服務。這怎么可能是模擬或類似的?我的啟動服務方法:public void doStartService() { super.doStartService(); PoolingHttpClientConnectionManager manager = new PoolingHttpClientConnectionManager(); manager.setDefaultMaxPerRoute(maxConnectionsPerRoute); manager.setMaxTotal(maxConnections); RequestConfig requestConfig = RequestConfig.custom() .setConnectTimeout(connectTimeout) .setSocketTimeout(socketTimeout) .setRedirectsEnabled(false).build(); HttpClientBuilder builder = HttpClientBuilder.create(); builder.setDefaultRequestConfig(requestConfig); builder.setConnectionManager(manager); client = builder.build(); }我的設置測試方法和一種測試方法:private ProductCatalogIntegrationService service; @Before public void setup() { service = new Service(); service.setConnectTimeout(10000); service.setSocketTimeout(10000); service.setMaxConnections(10); service.setMaxConnectionsPerRoute(10); service.setUrl("http://localhost:8888/products"); service.doStartService(); } @Test public void testReturnProductById() { service.setProductById(GET_PRODUCT_BY_ID); // set url from get product by id, by this url my other service goes to the database jsonItem = service.getProductById("1"); //get product by id 1 assertEquals(jsonItem.getId(), FIRST_PRODUCT_ID); // I compare the id on which I made the request to the database, so that I came and was wrapped in a class wrapper }如何正確執行,以免在測試中配置連接?
添加回答
舉報
0/150
提交
取消