3

我正在用黄瓜尝试水豚以获得更好的 javascript 测试覆盖率。我有很多步骤可以检查或使用 Rails 集成测试助手中的内容,例如:

assigns(:current_user).should_not be_nil

不管我怎么称呼assigns,即使我说类似的p assigns错误:

undefined method `template' for nil:NilClass (NoMethodError)

所以,我似乎不能再这样做了。是否有一种替代方法可以自省控制器中发生的事情,或者至少以某种方式运行这些步骤,以便我可以返回集成测试的内容?

4

1 回答 1

5

不幸的是没有。Capybara 测试机架应用程序,除了通过标准机架接口(即发出 HTTP 请求)之外,无法与机架应用程序内部的内容进行通信。机架应用程序内部发生的任何事情对 Capybara 都是不可见的。

于 2010-10-07T22:47:12.060 回答