テストの方法でいくつかのキュウリの概念を使用していますが、キュウリがまったく好きではなかったため、Steak を使用して受け入れテストを行っています。私はテスト用の宣言型と命令型のスタイルが好きで、いくつかの期待を精巧なカスタム rspec マッチャーに抽象化しています。このマッチャーは、マッチ メソッド内で他のマッチャーを使用します。例を次に示します。
RSpec::Matchers.define :show_post do |post|
match do |page|
within '.post' do
page.should have_content post.title
page.should have_content post.tagline
page.should have_content post.body
page.should list_author post.author
end
end
end
私が抱えている唯一の問題は、マッチャーが失敗した場合、何が欠けているかについての洞察を与えない一般的なメッセージを受け取ることです. .
私は次のことができるという表現力が本当に好きなので、しばらくの間、この煩わしさと一緒に暮らしてきました。
page.should show_post Post.last