好的,所以我遇到了一个非常奇怪的问题,直接与之前的块连接.我正在通过Watir和RSpec进行集成测试.对于检查用户是否可以执行登录的简单测试,我通过factory_girl在数据库中创建"用户"记录.
所以我把以下代码:
before(:each) do
@user = Factory(:user)
end
if "should perform a login" do
# do stuff
end
Run Code Online (Sandbox Code Playgroud)
在do stuff我调用浏览器,看看用户如何尝试登录.不幸的是,他不能这样做 - "用户名无效".
经过一番调查后,我发现如果我把用于创建用户的代码放在before(:all)块中,一切都神奇地起作用.怎么样?在这种情况下:all和之间的区别是什么:each?此外,如果我将用于创建用户的代码实际放在测试体中,它仍然不起作用(即用户不知何故没有添加到数据库或其他东西).
| 归档时间: |
|
| 查看次数: |
2234 次 |
| 最近记录: |