W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
Spring Cloud函數(shù)還具有一些集成測(cè)試實(shí)用程序,這些實(shí)用程序?qū)τ赟pring Boot用戶而言非常熟悉。例如,這是包裝以上應(yīng)用程序的HTTP服務(wù)器的集成測(cè)試:
@RunWith(SpringRunner.class) @FunctionalSpringBootTest @AutoConfigureWebTestClient public class FunctionalTests { @Autowired private WebTestClient client; @Test public void words() throws Exception { client.post().uri("/").body(Mono.just("foo"), String.class).exchange() .expectStatus().isOk().expectBody(String.class).isEqualTo("FOO"); } }
該測(cè)試幾乎與您為同一應(yīng)用程序的@Bean
版本編寫(xiě)的測(cè)試相同-唯一的區(qū)別是@FunctionalSpringBootTest
注釋?zhuān)皇浅R?guī)的@SpringBootTest
。所有其他部件,例如@Autowired
WebTestClient
,都是標(biāo)準(zhǔn)的Spring Boot功能。
或者,您可以僅使用FunctionCatalog
為非HTTP應(yīng)用編寫(xiě)測(cè)試。例如:
@RunWith(SpringRunner.class) @FunctionalSpringBootTest public class FunctionalTests { @Autowired private FunctionCatalog catalog; @Test public void words() throws Exception { Function<Flux<String>, Flux<String>> function = catalog.lookup(Function.class, "function"); assertThat(function.apply(Flux.just("foo")).blockFirst()).isEqualTo("FOO"); } }
(FunctionCatalog
始終將函數(shù)從Flux
返回到Flux
,即使用戶使用更簡(jiǎn)單的簽名聲明它們也是如此。)
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: