У меня есть конвейер на Heroku, который подключен к приложению rails, и каждый ENV (разработка, подготовка, производство, тестирование) связан со своей собственной схемой БД.проблема заключается в том, что когда я тестирую несколько ветвей параллельно, тест не проходит, потому что все тестируемые подключены к одной схеме.Один результат теста влияет на другой и вызывает сбой теста.это один из примеров, когда я запускал 2 теста одновременно, но хорошо, когда они запускаются один за другим, поэтому я считаю, что один результат теста влияет на другой.Мой вопрос: какова лучшая практика выполнения параллельного модульного тестирования без сбоев?
Failures:
1) User is valid with valid attributes
Failure/Error: let(:user) { create :user }
ActiveRecord::StatementInvalid:
Mysql2::Error: SAVEPOINT active_record_1 does not exist: ROLLBACK TO SAVEPOINT active_record_1
# ./spec/models/user_spec.rb:5:in `block (2 levels) in <main>'
# ./spec/models/user_spec.rb:9:in `block (2 levels) in <main>'
# ./spec/rails_helper.rb:79:in `block (3 levels) in <top (required)>'
# ./spec/rails_helper.rb:78:in `block (2 levels) in <top (required)>'
# ------------------
# --- Caused by: ---
# Mysql2::Error:
# Deadlock found when trying to get lock; try restarting transaction
# ./spec/models/user_spec.rb:5:in `block (2 levels) in <main>'