Wiremock mock, возвращающий HTTP 500

Я использую wireMock и получаю последовательный ответ 500 Internal Server Error, даже если заглушенный ответ - 200 OK.

Если я отлаживаю, я вижу, что соединение всегда закрыто. Есть идеи, что может пойти не так? Или что делаю не так.

Вот тест

public class MyControllerTest {

@Autowired
MyController myController;

String id1 = "id1";
String id2 = "id2";
Integer offset = 0;
Integer limit = 1;
int port = 8080;
protected WireMockServer wireMockServer;

@Rule
public WireMockRule wireMockRule = new WireMockRule(wireMockConfig().port(port);

@Test
public void hosDriversHoursOfServiceGet() throws Exception {
    stubFor(WireMock.get(urlEqualTo("/path/endPoint"))
                    .withQueryParam("id1", equalTo(id1))
                    .withQueryParam("id2", equalTo(id2))
                    .withQueryParam("limit", equalTo(limit.toString()))
                    .withQueryParam("offset", equalTo(offset.toString()))
                    .willReturn(aResponse().withStatus(200).withBody((getJsonString()))));
Response response = myController.hosDriversHoursOfServiceGet(driverId, 1, 1);
    assertEquals(Integer.valueOf(1), response.getCount());
}

private String getJsonString() {
    return "{\"count\":1}";
}


}

Пытаюсь издеваться над: http://localhost:8080/path/endPoint?id1= { id1} & id2 = {id2} & limit = {limit} & offset = {смещение}

Вышеупомянутый вызов выполняется в клиентском классе, который автоматически подключается к MyController. Можно ли вообще посмеяться, ведь это не прямой звонок?


person Pavanraotk    schedule 26.04.2017    source источник


Ответы (1)


Проблема решена, все связано с зависимостью Javax-servlet-api в wiremock и моем приложении. Изменил wiremock с wiremock 2.6.0 на wiremock-standalone, который использовал зависимость приложения servlet-api, по сути, это сработало.

Не уверен, что это правильный ответ, но это сработало.

person Pavanraotk    schedule 27.04.2017
comment
Могу подтвердить, что это решение стоит попробовать, оно мне помогло. - person itachi; 23.08.2019