dbr*_*708 5 testing ruby-on-rails
当我在Rails功能测试中运行帖子时
setup do
post :create, :user => Factory.attributes_for(:user)
end
Run Code Online (Sandbox Code Playgroud)
它失败了,我没有得到任何关于为什么的反馈.我知道它失败了,因为我断言确保数据库中有一条额外的记录失败.
我试着这样做
setup do
post :create, :user => Factory.attributes_for(:user)
assert_valid @controller.object
end
Run Code Online (Sandbox Code Playgroud)
但是对象是受保护的方法.
如何检查由调用后调用产生的模型对象上的错误?
我正在使用Shoulda和Factory Girl,但我怀疑这并不重要.
添加以下断言:
assert_nil assigns(:user).errors
Run Code Online (Sandbox Code Playgroud)
如果保存对象时出错(可能是验证),则会失败,并显示错误对象的值.
归档时间: |
|
查看次数: |
1069 次 |
最近记录: |