С Ruby on Rails, там способ для меня вывести мою производственную базу данных в форму, к которой может получить доступ тестовая часть направляющих?
Я думаю или способ превратить производственную базу данных в приспособления или иначе способ переместить данные из производственной базы данных в тестовую базу данных, которая не будет обычно убираться направляющими.
Я хотел бы использовать эти данные для множества тестов, но в первую очередь в моем уме использует реальные данные с тестами производительности, так, чтобы я мог получить реалистическое понимание времени загрузки.
Вы также можете проверить http://github.com/napcs/lazy_developer , который позволит вам помещать производственные данные в файлы yaml.
Вы можете использовать seed.rb внутри папки db, заполните свою тестовую базу данных данные, которые вам нужны. На Railscasts есть хороший пример: http://railscasts.com/episodes?search=seed
Тем не менее, я бы порекомендовал вам хранить производственные данные подальше от среды тестирования. И делайте бэкапы !!!
Мы только что столкнулись с подобной проблемой и в итоге написали вспомогательный метод в rspec, который извлекает некоторые данные (в нашем случае, данные входа для некоторых учетных записей) из производственной базы данных.
Следующее должно дать представление:
require 'yaml'
def accounts
@accounts ||= lambda {
config = YAML.load_file("#{Rails.root}/config/database.yml")['production']
dbh = Mysql.real_connect(config['host'], config['username'], config['password'], config['database'])
accounts = []
result = dbh.query("SELECT `accounts`.* FROM `accounts`")
while row = result.fetch_hash do
row.delete("id")
accounts << Account.make(row)
end
dbh.close
return accounts
}.call
end