テストRailsのメタル/ RSpecのラック?
-
20-09-2019 - |
質問
私はプレビューという名前のメタルクラスを持っていると言います。どのように私はRSpecのでそれをテストするのですか?
私がしようとしたときます:
require 'spec_helper'
describe Preview do
it "should return the posted content" do
post "/preview", :content => "*title*"
response.body.should == "*title*"
end
end
私が入手ます:
undefined method `post' for #<ActiveSupport::TestCase::Subclass_1:0x1058b3098>
テストがコントローラに対して明示的でない場合、RSpecのは:post
メソッドをロードしないようです。私は無駄に:type => :controller
を指定しようとしました。
解決
RSpecのはラップが(ラックを通過)統合テストをレール統合スペックを持っています。ただ、./spec/integration/preview_spec.rb
でそのスペックを入れます。
他のヒント
私はそれは、ラック/テスト
でテストする方が良いと思いますこの頃(RSpecのレール2.2.0とRails 3)あなたはの要求仕様を使用していることを実現することができます:
readmeファイルするによると:
要求スペックがスペック/リクエストに住んでいる。
[...]
Railsの統合テストから行動の要求スペックミックス。詳細については、ActionDispatch ::統合::ランナーのためのドキュメントを参照してください。
所属していません StackOverflow