对于JpaRepository,有@DataJpaTest@DataJpaTest允许在Spring中对JPA存储库进行简单且隔离的测试。

我们正在使用spring-data-r2dbc。是否有等效的@DataJpaTest用于ReactiveCrudRepository进行单独测试?

最佳答案

是的,从Spring Boot 2.3开始,您可以使用@DataR2dbcTest为R2DBC存储库(包括DatabaseClient)启动上下文:

@DataR2dbcTest
class DataR2dbcTestIntegrationTests {

    @Autowired
    private DatabaseClient databaseClient;

    @Autowired
    private ConnectionFactory connectionFactory;

    @Autowired
    private MyRepository myRepository;

    @Test
    void testDatabaseClient() {
        this.databaseClient.execute("SELECT * FROM example").fetch().all()
             .as(StepVerifier::create).verifyComplete();
    }

    // …
}

10-06 01:38