特定のノードを分離してテストしたいと考えています。
たとえば、代わりに
get :show
response.should have_content(@user.name)
次のようなものを書くことができる方が、より説明的/正しいでしょう
get :show
profile = response.find_selector("div.user-profile")
profile.should have_content(@user.name)
出来ますか?
アップデート
ピーターの答えを読んだ後、これをもう少し進めましたが、まだ要素が見つかりません。
のapp\views\users\index.html.erb
<h1>Users</h1>
<div id="test"></div>
のspec\controllers\users_controller_spec.rb
require 'spec_helper'
describe UsersController do
render_views
it "should should have header" do
get :index
response.should have_selector("h1", content: "Users")
end
it "should show user profile" do
get :index
node = page.find_by_id("test")
p node
end
end
最初のテストはパスしますが、2 番目のテストではElementNotFound
エラーが発生します。これがRailsでの私の最初の試みであるため、私はおそらく愚かなことをしているだけです.