我有一个非常奇怪的问题,我不知道应该去哪里找到它。我正在使用 rspec 和 Factory Girl 开发一个 Rails 3 应用程序进行测试。由于某种原因,每当我运行任何rails命令(例如,rake数据库、启动开发服务器等)时,都会创建一个工厂用户并将其存储在我的开发数据库中。最糟糕的是,它总是具有相同的电子邮件,我正在验证应用程序中的唯一性,因此在我手动删除记录之前,命令不会运行。
我已经查看了我的工厂文件,我不认为我在那里做了任何奇怪的事情,并且建议我还能在哪里找到执行此操作的代码?
编辑:这是我的数据库.yml
# MySQL. Versions 4.1 and 5.0 are recommended.
#
# Install the MySQL driver:
# gem install mysql2
#
# And be sure to use new-style password hashing:
# http://dev.mysql.com/doc/refman/5.0/en/old-client.html
development:
adapter: mysql2
encoding: utf8
reconnect: false
database: ATBTracking_development
pool: 5
username: [NOT TELLING]
password: [NOT TELLING]
socket: /var/run/mysqld/mysqld.sock
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
adapter: mysql2
encoding: utf8
reconnect: false
database: ATBTracking_test
pool: 5
username: [NOT TELLING]
password: [NOT TELLING]
socket: /var/run/mysqld/mysqld.sock
production:
adapter: mysql2
encoding: utf8
reconnect: false
database: ATBTracking_production
pool: 5
username: [NOT TELLING]
password: [NOT TELLING]
socket: /var/run/mysqld/mysqld.sock
我想到了。在我的 Gemfile 中,我有:
group :development, :test do
gem 'capybara'
gem "rspec-rails"
gem "guard-rspec"
gem "factory_girl_rails"
...
end
我将工厂女孩从这个街区移到了自己的生产线上,因此它只在测试组中,如下所示:
gem 'factory_girl_rails', :group => :test
没有更多问题
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)