ActiveSupport :: TestCase vs Test :: Unit :: TestCase при модульном тестировании рельсов - PullRequest
12 голосов
/ 18 января 2010

Я недавно заметил, что моя тестовая база данных не очищается после выполнения моих тестов, если мои тесты являются подклассом Test :: Unit :: TestCase.Если мои тесты являются подклассом ActiveSupport :: TestCase, все вычищено правильно.

Кто-нибудь может объяснить почему и / или предоставить объяснение использования одного против другого?

Я использую musta и factory_girl.

Спасибо.

1 Ответ

19 голосов
/ 18 января 2010

Если вы посмотрите на код , вы увидите, что ActiveSupport::TestCase имеет множество функций настройки и утилит для тестирования Rails. В старых версиях Rails Test::Unit::TestCase использовалось много миксинов, но некоторое время назад они перешли на подклассы.

Если вы тестируете приложение Rails, вы должны создать подкласс ActiveSupport::TestCase или ActionController:TestCase для контроллеров. Генераторы будут делать это автоматически, поэтому вам не придется думать об этом большую часть времени.

...