Dans Rails 3 application à l'aide de Steak, Capybara et RSpec comment puis-je tester le titre de la page?
Réponses
Trop de publicités?Depuis la version 2.1.0 de capybara il existe des méthodes sur la session de traiter avec le titre. Vous avez
page.title
page.has_title? "my title"
page.has_no_title? "my not found title"
Ainsi, vous pouvez tester le titre comme:
expect(page).to have_title "my_title"
Selon github.com/jnicklas/capybara/issues/863 la suite est également travailler avec le capybara 2.0:
expect(first('title').native.text).to eq "my title"
jpwynn
Points
5222
Dylan Markow
Points
65796
Jake
Points
472
CharlesJHardy
Points
2701
Test du Titre de chaque page peut être fait dans un chemin beaucoup plus facile avec RSpec.
require 'spec_helper'
describe PagesController do
render_views
describe "GET 'home'" do
before(:each) do
get 'home'
@base_title = "Ruby on Rails"
end
it "should have the correct title " do
response.should have_selector("title",
:content => @base_title + " | Home")
end
end
end