WebFlux with 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 以用于 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`模式更快。