Как правильно настроить транзакционные устройства в Rails? - PullRequest
0 голосов
/ 13 июля 2010

Вчера я только начал новый проект, и у меня много странных проблем с фиксацией транзакций.Похоже, что это проблема с 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), поэтому не удивительно, что может произойти совпадение.

Какие выводы вы бы сделали из этой ситуации и какВы бы починили это?

1 Ответ

0 голосов
/ 22 июля 2010

Похоже, есть проблема с последним rails-rspec2: http://github.com/rspec/rspec-rails/issues/issue/58

...