WebFlux 與 WebTestClient

您可以使用 WebTestClient 來搭配 WebFlux。以下列表顯示如何將 WebTestClient 配置為測試模式

Maven
<plugin>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-contract-maven-plugin</artifactId>
    <version>${spring-cloud-contract.version}</version>
    <extensions>true</extensions>
    <configuration>
        <testMode>WEBTESTCLIENT</testMode>
    </configuration>
</plugin>
Gradle
contracts {
		testMode = 'WEBTESTCLIENT'
}

以下範例示範如何設定 WebTestClient 基礎類別和 RestAssured for WebFlux

import io.restassured.module.webtestclient.RestAssuredWebTestClient;
import org.junit.Before;

public abstract class BeerRestBase {

	@Before
	public void setup() {
		RestAssuredWebTestClient.standaloneSetup(
		new ProducerController(personToCheck -> personToCheck.age >= 20));
	}
}
}
WebTestClient 模式比 EXPLICIT 模式更快。