@DirtiesContext не очищает базу данных - PullRequest
0 голосов
/ 08 июля 2020

Я пробовал следующие шаги, но, к сожалению, мне не повезло:

Метод номер 1 всегда терпит неудачу, потому что ожидаемый размер 1, но его 2 -> тест запускается индивидуально, проходит успешно, но когда я запускаю все тесты приложения, то именно это один из них не работает

1) Пометьте каждый метод @DirtiesContext(methodMode = DirtiesContext.MethodMode.BEFORE_METHOD)

2) Отметьте на уровне класса @DirtiesContext(classMode = DirtiesContext.ClassMode.BEFORE_EACH_TEST_METHOD)

3) Пометьте методы @Transactional

  @SpringBootTest
public class ExportServiceTest {

    @Autowired
    ExportService exportService;

    @Autowired
    ExportRepository exportRepository;

    @Autowired
    UserRepository userRepository;


    @Test
    public void onlyOneExportUserShouldBeAddedWithMultipleEntries() {
        UserEntity userEntity = new UserEntity().setId(2L);
        exportService.createIfNotExist(userEntity);
        exportService.createIfNotExist(userEntity);
        Assertions.assertThat(exportRepository.findAll()).hasSize(1);
    }

    @Test
    public void exportUserShouldBeAdded() {
        UserEntity userEntity = new UserEntity().setId(1L);
        exportService.createIfNotExist(userEntity);
        Optional<UserExportEntity> exportUser = exportRepository.findByUserEntityId(userEntity.getId());
        Assertions.assertThat(exportUser).isPresent();
    }

    @Test
    public void shouldHaveTwoRecordsInExport() {
        UserEntity userEntity = new UserEntity().setId(1L).setEmail("test@test.com");
        UserEntity userEntity2 = new UserEntity().setId(2L).setEmail("test1@test.com");
        userRepository.save(userEntity);
        userRepository.save(userEntity2);
        exportService.createIfNotExist(userEntity2);
        exportService.createIfNotExist(userEntity);
        Assertions.assertThat(exportRepository.findAll()).hasSize(2);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...