J'essaie actuellement de mettre en place des tests d'intégration/acceptation pour une nouvelle application de rails 3 avec du concombre et du capybara. (Je d'abord raboté à utiliser Webrat, mais il semble qu'il ne supporte pas les rails 3, donc j'ai fini avec capybara)Comment suivre une redirection après click_link/button avec concombre et capybara dans les rails?
J'essaie d'obtenir un travail de test de connexion de base:
Feature: Login user
In order to access the non-public parts of the site,
as a user,
I want to login to the site
Scenario: login with valid credentials
Given I am on the login page
When I fill in "Email" with "[email protected]"
And I fill in "Password" with "pass"
And I press "Login"
Then I should be on the users home page
And I should see "Login successful"
Le problème est maintenant, que le formulaire de connexion m'envoie à /user_session
qui me redirige ensuite vers la maison des utilisateurs /home
. Le concombre ne suit pas la redirection qui provoque l'échec de la ligne Then I should be on the users home page
.
Comment puis-je dire à cucumber/capybara de suivre la redirection afin que je sois sur la bonne page après avoir appuyé sur un bouton de suivre un lien?
Il semble y avoir une méthode follow_redirect!
dans le pilote rack_test que j'utilise, mais elle est privée et je n'ai aucune idée de la manière d'appeler cette fonctionnalité.
merci à l'avance,
Simon
C'est la réponse que je craignais le plus, mais j'ai aussi entendu cela d'une autre source. Besoin d'enquêter que ... –
d'oh! Quelque chose n'allait pas avec mes données de test. Pas étonnant que ça n'ait pas marché si l'utilisateur n'existait pas dans la base de données. Merci pour l'aide! –
C'est Capybara qui suit les redirections. Rack :: Test ne fait que suivre la redirection si vous appelez 'follow_redirect!': http://rdoc.info/github/brynary/rack-test/master/Rack/Test/Session – Timo