изменение отката в базе данных без использования @transactional для весеннего теста - PullRequest
0 голосов
/ 26 апреля 2018

Я создаю тест, который требует сохранения данных в базе данных, поэтому я не могу использовать @Transactional, потому что мне нужно, чтобы данные эффективно сохранялись в базе данных, вопрос без использования @transaction возможен откат транзакции после коммита?

1 Ответ

0 голосов
/ 27 апреля 2018

Ваша база данных должна находиться в известном состоянии перед каждым тестом, и ни один тест не должен зависеть от результатов другого. Если вам нужно выполнить фиксацию по какой-либо другой причине, например, для устранения неполадок теста, вы можете аннотировать свой класс теста или отдельные методы теста с помощью:

@Rollback(false) или @Commit

https://docs.spring.io/spring/docs/current/spring-framework-reference/testing.html#rollback

https://docs.spring.io/spring/docs/current/spring-framework-reference/testing.html#commit

@ Откат указывает, есть ли транзакция для транзакционного теста метод должен быть отменен после завершения метода тестирования. Если true, транзакция откатывается; в противном случае транзакция совершено (см. также @Commit). Семантика отката для интеграционных тестов в Spring TestContext Framework по умолчанию установлено значение true, даже если @Rollback явно не объявлено.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...