Просто вопрос явного указания среды, когда вы собираетесь запускать тесты. Тебе просто нужно заранее приготовиться.
Скажем, ваша новая среда будет называться "testjohn" (предположительно для разработчика по имени Джон). Тогда:
1 - Копировать config / environment / test.rb в config / environment / testjohn.rb
2 - Добавьте соответствующий раздел БД в config / database.yml (скопируйте его из тестового раздела, переименуйте его, затем предположительно измените имя базы данных, пароль и другие данные).
Мой (довольно упрощенный) пример использует это:
testjohn:
adapter: sqlite3
database: db/testjohn.sqlite3
pool: 5
timeout: 5000
3- Запустите ваши тесты следующим образом:
RAILS_ENV="testjohn" rake db:migrate
RAILS_ENV="testjohn" rake test:units
Кстати, поскольку RAILS_ENV - это просто переменная среды, у вас может быть сценарий, который устанавливает его заранее, или даже каждый разработчик настраивает свою собственную переменную RAILS_ENV в своем .profile или любом другом файле. Таким образом, они просто запускают тест рейка: блоки и тесты автоматически выполняются в их персонализированной среде.