我已经为我的 rails 3.2 应用程序编写了一些 RSpec 测试,因为我对弹出的浏览器感到厌烦,我试图从 firefox 更改为capybara-webkit
. 在此之后,所有测试仍然运行,除了一个。失败的行是:
expect { click_button "Create" }.to change(Answer, :count).by(count)
如果我删除期望并在前后添加一个截屏方法,我可以看到测试运行正确。但是,如果我使用 Debugger,日志会显示记录是在第二个屏幕截图行之后创建的。我可以永远等待 click_button 和相应的控制器动作在下一行执行后运行。
“创建”按钮是一个标准的 html 按钮,创建动作不涉及任何 JS。某人对这种奇怪的行为有解释吗?