gpt4 book ai didi

spring - 无法自动接线 `WebTestClient` - 没有自动配置

转载 作者:IT老高 更新时间:2023-10-28 13:53:16 28 4
gpt4 key购买 nike

我们正在使用 spring framework 5 和 spring boot 2.0.0.M6,我们还使用 WebClient 进行响应式(Reactive)编程。我们为我们的响应式(Reactive)休息端点创建了测试方法,因此我查找了一些关于如何做到这一点的示例。我找到了 this一个或 this和许多其他地方都一样。他们只是 Autowiring 一个 WebTestClient。所以我尝试了同样的方法:

@Log
@RunWith(SpringRunner.class)
@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT)
public class MyControllerTest {

@Autowired
private WebTestClient webClient;

@Test
public void getItems() throws Exception {
log.info("Test: '/items/get'");

Parameters params = new Parameters("#s23lkjslökjh12", "2015-09-20/2015-09-27");

this.webClient.post().uri("/items/get")
.accept(MediaType.APPLICATION_STREAM_JSON)
.contentType(MediaType.APPLICATION_STREAM_JSON)
.body(BodyInserters.fromPublisher(Mono.just(params), Parameters.class))
.exchange()
.expectStatus().isOk()
.expectHeader().contentType(MediaType.APPLICATION_STREAM_JSON)
.expectBody(Basket.class);
}
}

我无法运行它,因为我收到了错误:

Could not autowire. No beans of 'WebTestClient' type found.

所以似乎不存在自动配置。是我用错了版本还是怎么回事?

最佳答案

使用 @AutoConfigureWebTestClient 注释来注释您的 MyControllerTest 测试类。这应该可以解决问题。

关于spring - 无法自动接线 `WebTestClient` - 没有自动配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48226651/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com