Эквивалентен DataJpaTest для Spring Data ReactiveCrudRepository и R2DBC

Для JpaRepository есть _ 2_. @DataJpaTest позволяет проводить простое и изолированное тестирование репозиториев JPA в Spring.

Мы используем spring-data-r2dbc. Есть ли эквивалент @DataJpaTest для _ 6_, чтобы протестировать его изолированно?


person Bernhard    schedule 09.03.2020    source источник


Ответы (1)


Да, начиная с Spring Boot 2.3 вы можете использовать _ 1_, чтобы развернуть контекст для ваших репозиториев 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();
    }

    // …
}
person mp911de    schedule 10.03.2020
comment
Будет ли @ DataR2dbcTest выполнять откат изменений после выполнения другого теста? - person jorgebo10; 12.02.2021
comment
Нет, потому что @Test методы не участвуют в управлении транзакциями. - person mp911de; 15.02.2021