Я пытаюсь запустить пример кода из этой книги: Создание веб-служб RESTful с помощью Spring 5 - Second Edition .Вы можете скачать образец кода бесплатно.В главе 7 у них есть некоторый пример кода, который включает в себя некоторые интеграционные и модульные тесты в одном каталоге "chapter7 \ ticketmanagement / src / test / java / com / packtpub / restapp / ticketmanagement /".Модульные тесты работают нормально.Интеграционные тесты завершаются неудачно с "testUsersJsoup (com.packtpub.restapp.ticketmanagement.JsoupUserTest) Прошло время: 1,011 сек <<< ОШИБКА! Java.net.ConnectException: соединение отклонено: connect" </p>
Я экспериментировал с изменениемпорт с 8080 до 9090 в "ticket-management \ src \ main \ resources \ application.properties" (я также изменил жестко заданные значения в интеграционном тесте), и это не помогло.
Так что "mvn test"выдает вышеуказанную ошибку.Так же как и запуск их в наборе инструментов Spring.Я отредактировал оригинальный файл pom.xml и добавил «maven-compiler-plugin», чтобы указать версию Java 1.8.Я использую Windows 10.
Итак, код ошибки находится в "главе 7 \ ticket-management \ src \ test \ java \ com \ packtpub \ restapp \ ticketmanagement \ JsoupUserTest.java".
Вот код ошибки:
public void testUsersJsoup() throws IOException {
String doc = Jsoup.connect("http://localhost:9090/user").ignoreContentType(true).get().body().text();
_log.info("{test} doc : " + doc);
JsonParser parser = new JsonParser();
JsonElement userElement = parser.parse(doc);
JsonArray userArray = userElement.getAsJsonArray();
_log.info("{test} size : " + userArray.size());
assertEquals(4, userArray.size());
}
ОДНАКО, когда я набираю
mvn spring-boot:run
, он запускается успешно, и я указываю свой браузер Chrome на http://localhost:9090/user (или http://localhost:8080/user, если я использую оригинальный код) Я вижу
[{"userid":100,"username":"David"},{"userid":101,"username":"Peter"},{"userid":102,"username":"John"}]
Нет ошибки подключения!Результаты выглядят корректно.
- Мы знаем, что это не проблема брандмауэра, потому что это просто с localhost и работает с chrome.
- Не задействован прокси.
- Я думаю, что порты верны: у меня в настоящее время 9090 в файле application.properities, а также в исходном коде и в браузере.
- "mvn clean", а затем "mvn test" снова не помогли.