0

升级到最新版本的 Capybara 后,我所有的访问方法都停止了工作,所以我遵循了一些人提出的解决方案,即将请求规范目录重命名为“功能”。现在我的访问方法再次起作用,但是请求规范中的任何 get 或 post 方法都会导致此错误:

undefined method `get' for #<RSpec::Core::ExampleGroup::Nested_1::Nested_1::Nested_1::Nested_1::Nested_1:0x007f9cce9adc20>

这是触发错误的代码:

describe "getting posts" do
    before { get(forum_posts_path) }
    it "should respond with a 200" do
        response.response_code.should == 200
    end
end

有什么解决方法吗?

4

1 回答 1

4

您不会将spec/requests目录重命名为spec/features:您同时拥有:

  • 使用 Capybara DSL(visit等)并且通常在spec/featurespage中断言反对go 的测试。
  • 使用机架测试 DSL(get等)的测试,通常response规范/请求中断言反对

有关详细信息,特别是那里的外部链接,请参阅此StackOverflow 答案

于 2013-01-23T06:46:01.063 回答