我有一个名为test_feature_spec.rb
的简单测试功能:
(这只是为了解决这个问题......实际规格要长得多,实际的功能规格)
require "features_helper"
RSpec.feature "Simple Feature", type: :feature do
scenario "a test scenario" do
get "/"
end
end
我可以做各种各样的Rails-y事情,包括水豚驱动的东西(比如visit such_n_such_path
)。但是上面的崩溃:
Failures:
1) Simple Feature a test scenario
Failure/Error: get "/"
NoMethodError:
undefined method `get' for #<RSpec::ExampleGroups::SimpleFeature:0x000000011a799788>
Did you mean? gets
gem
如果我只是将其从type: :feature
更改为type: :request
,那就可以了:
> rspec spec/features/test_feature_spec.rb
.
Finished in 0.64913 seconds (files took 5.82 seconds to load)
1 example, 0 failures
似乎与type
=&gt; request
Rails或Rspec加载一些东西以允许调用控制器路由,但它没有type
=&gt; feature
。
有没有办法加载这些辅助方法(例如get
和post
等),但仍将该功能保留为type: :feature
?
我知道我可以将其更改为type: :request
但技术上这些是功能规格,即使对于其中一些,要设置一些状态或做任何事情,他们需要调用某些网址。
答案 0 :(得分:0)
在RSpec.configure do |config|
config.include FeaturesHelper, :type => :request
end
中,您可以尝试:
{{1}}