Spring Boot: тестирование, автоматически настроенные REST клиенты

Вы можете использовать аннотацию @RestClientTest для тестирования REST клиентов. По умолчанию он автоматически настраивает поддержку Jackson, GSON и Jsonb, настраивает RestTemplateBuilder и добавляет поддержку MockRestServiceServer. Обычные компоненты @Component не загружаются в ApplicationContext.

Конкретные bean-компоненты, которые вы хотите протестировать, должны быть указаны с помощью атрибута value или компонентов @RestClientTest, как показано в следующем примере:

@RestClientTest(RemoteVehicleDetailsService.class)
class ExampleRestClientTest {

    @Autowired
    private RemoteVehicleDetailsService service;

    @Autowired
    private MockRestServiceServer server;

    @Test
    void getVehicleDetailsWhenResultIsSuccessShouldReturnDetails()
            throws Exception {
        this.server.expect(requestTo("/greet/details"))
                .andRespond(withSuccess("hello", MediaType.TEXT_PLAIN));
        String greeting = this.service.callRestService();
        assertThat(greeting).isEqualTo("hello");
    }

}


Читайте также:


Комментарии

Популярные сообщения из этого блога

Методы класса Object в Java

Как получить текущий timestamp в Java

Основные опции JVM для повышения производительности и отладки