0

我使用“设计”gem 进行身份验证,使用 rspec 进行测试。我的问题是规范执行后测试数据没有从数据库中清除,因为随后的规范执行失败。以下是规格:

描述用户做

它“在使用有效的电子邮件和密码时应该返回一个有效的用户” do user = User.new(:email => 'test@abc.com', :password => 'test123', :password_confirmation => 'test123') user.save user.should be_valid end

结尾

我在这里还有什么可以做的吗?

4

2 回答 2

0

我自己也不确定。我正在学习如何制作宝石,我遇到了这个问题。我在spec_helper中添加了方法:


def purge_db
  [User, Subscription, Dorkus].each {|c| c.delete_all}
end

Spec::Runner.configure do |config|
  config.before(:each) { purge_db }
end         
于 2010-03-30T08:35:49.253 回答
0

在某些情况下,通常的做法是在每次运行规范之前准备测试数据库:

rails db:test:prepare
于 2019-08-12T01:02:54.097 回答