Вчера я только начал новый проект, и у меня много странных проблем с фиксацией транзакций.Похоже, что это проблема с Rails, поэтому я надеюсь, что StackOverflow может помочь.Вот краткое изложение.
Сотрудники могут выполнять тесты нормально.Они работают под управлением Mac OS X;Я использую Ubuntu.
Когда use_transactional_fixtures
равен true
, многие тесты завершаются неудачно с can't find [record] with ID=[some-id]
.Мои коллеги работают в этом режиме, но не испытывают проблем.
Если я установлю use_transactional_fixtures
на false
, почти все ранее провалившиеся тесты пройдут снова.Мои коллеги не видят разницы, за исключением того, что тесты выполняются несколько медленнее, поскольку транзакции больше не используются.
Когда тесты выполняются индивидуально (rake spec SPEC=spec/some-specific-spec.rb
) с приборами на false
, в тесте № 1234 произошел сбой, и только в тесте № 1234.
При выполнении тестов все вместе (rake spec
) с приборами на false
, в тесте № 3456 произошел сбой, и только в тесте № 3456.
Эти два теста никак не связаны между собой.Есть много тестов (более 5000), поэтому не удивительно, что может произойти совпадение.
Какие выводы вы бы сделали из этой ситуации и какВы бы починили это?