我的代码中有一个工厂:
FactoryGirl.define do
factory :user do
name 'Nitish'
email 'nitishxyz@gmail.com'
password "password"
password_confirmation "password"
end
end
使用 rspec 编写的验证测试为:
it "is invalid without a unique email" do
user = FactoryGirl.build(:user, email: "nitishxyz@gmail.com", name: 'Buddha')
expect(user).to have(1).errors_on(:email)
end
数据库中不存在名称为“Buddha”的其他记录。
测试失败并出现错误:
Failure/Error: expect(user).to have(1).errors_on(:email)
expected 1 errors on :email, got 2
为什么会这样?如何检查电子邮件中的另一个错误?