在Capybara docs中,它有
describe "the signin process", :type => :feature do
before :each do
User.make(:email => 'user@example.com', :password => 'password')
end
it "signs me in" do
visit '/sessions/new'
within("#session") do
fill_in 'Email', :with => 'user@example.com'
fill_in 'Password', :with => 'password'
end
click_button 'Sign in'
expect(page).to have_content 'Success'
end
end
我的问题是User.make和User.create之间有什么区别;从这个问题来看: docs User.make是一种Machnist gem特定方法。为什么Capybara会在其文档中包含它而不仅仅是用户User.create,它对于测试规范是否至关重要或真正有用?
答案 0 :(得分:1)
Machinist和FactoryGirl等库允许您使用具有合理默认值的模板创建实体,因此您只需指定与测试相关的属性。在测试中使用它们是很常见的,作为灯具的替代品。