Программный запуск WireMock на удаленном сервере Unix из JUNIT

Прежде всего, хотел бы поблагодарить команду WireMock за потрясающее решение для макета, которое просто использовать и интегрировать.

http://wiremock.org/docs/

У меня была конкретная проблема. Я запускаю WireMock, как показано ниже, в моих тестах Junit на моем локальном компьютере. Когда WireMock запускается, он работает на порту 8089, как показано ниже, и я могу просматривать URL-адрес по приведенной ниже ссылке, которая идеально подходит.

http://localhost:8099/xx/xx/invoice/201628JP00006097

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

wireMockRule.stubFor(get(urlEqualTo("/xx/larxxs/invoice/201627JP00006087"))
        .willReturn(aResponse().withHeader("Content-Type", "text/xml").withBodyFile("K000006087.xml")));

После размещения этого макета на моем локальном компьютере я запускаю пакетное задание на удаленном сервере UNIX. Затем пакетное задание пытается получить эти данные из макета по ссылке https, и раньше оно работало нормально. Теперь на удаленном сервере UNIX произошли некоторые изменения, или я не уверен, что изменилось за ночь, поскольку удаленный компьютер UNIX выдает ошибку при попытке получить данные от WireMock. Хотя ping работает с моей машины, чтобы удалить UNIX Machine, и наоборот, я могу получать данные через браузер на моем локальном хосте.

2016-08-03 17:31:50.101 ERROR 19483 --- [main] .w.s.l.s.b.t.OldLarsRestInvoiceGenerator : Exception while getting invoice data from Cybill rest serviceorg.springframework.web.client.ResourceAccessException: I/O error on GET request for "https://10.10.34.238:8089/xx/xx/invoice/201627JP00006087": Connection timed out; nested exception is java.net.ConnectException: Connection timed out

Я хотел спросить, можем ли мы запустить WireMock программно из Junit на удаленной машине UNIX и как мы можем это сделать. Как и в @Rule, я упомянул, что он работает на порту 8089. Могу я также упомянуть здесь хост.

Я видел, что мы можем установить файл Jar на удаленный сервер, а затем запустить его, но есть ли способ сделать это программно и вместо этого запустить WireMock на удаленном сервере.

@ Правило общедоступного WireMockRule wireMockRule = новое WireMockRule (wireMockConfig () .httpsPort (8089) .host (myUNIXSERVER));

Спасибо за помощь!!


person Vivek Malhotra    schedule 04.08.2016    source источник


Ответы (1)


Я думаю, вам стоит попробовать ниже

public WireMockRule wireMockRule = new WireMockRule(wireMockConfig().port(8089));

просто потому что теперь вы издеваетесь над https: // и используете https: //

person Jo Dung    schedule 27.09.2016