10
votes

Simulez la fermeture / réouverture du navigateur en concombre / Capybara?

Je suis en train d'écrire des tests de concombre pour tester la fonctionnalité de type «Se souvenir de moi» de l'utilisateur, et afin de le faire dans la vie réelle, l'utilisateur fermerait son navigateur, rouvrez son navigateur et revenez sur le site.

My test jusqu'à présent ressemble à ceci: xxx

Cependant, je ne sais pas quoi remplir pour le "quand je ferme et réouvre la définition de l'étape du navigateur"

Est-ce que quelqu'un sait comment je ferais cela (ou si ce n'est pas ce que je devrais faire, comment je devrais le tester?)


3 commentaires

Avez-vous trouvé la réponse pour votre question? Nous essayons de tester l'utilisation localeStorage et notre application hors ligne. Parfois, nous devons rouvrir le navigateur ou ouvrir dans un autre navigateur (cela pourrait être le même navigateur, mais avec des données locales propres et des biscuits vides). Nous avons déjà créé une fourchette d'une autre fourchette (support HTML5) et fusionné avec Capybara-webkit (0.7.2) avec support localStorage. Mais maintenant, nous avons des problèmes avec des étapes de navigateur Rouvrant.


Avez-vous trouvé la réponse à votre question?


Je n'ai pas trouvé de réponse, mais finalement fini par jeter le test. Désolé!


5 Réponses :


1
votes

Créer peut-être une deuxième session de Capybara? http://rubydoc.info/github/jnicklas/capybara/master/capybara/session


0 commentaires

1
votes

Vous pouvez simplement effacer les cookies. XXX


1 commentaires

Je pense que les scénarios sont en faveur de la vérification du cookie sont définis et lus correctement sur différentes sessions, ce qui élimine ainsi les cookies briserait le test.



2
votes

J'utilise Montrez-moi les cookies .

Ajouter au paquet avec GEM 'show_me_the_cookies ' puis ajoutez monde (showMethecookies) dans vos fonctions / support / env.rb

Définissez simplement une étape: xxx


0 commentaires

1
votes

Cette gemme facilite la tâche: https://github.com/nruth/show_me_the_cookies


0 commentaires

0
votes

J'essayais de tester la même chose, je l'ai fait fonctionner comme ceci: xxx

Quelques choses:

  • page.Driver.quit supprime les cookies, c'est pourquoi je fais la danse avec les cookies
  • j'ai essayé de fermer la fenêtre à l'aide de page.Driver.close_window (page.Driver.current_window_handle) , puis retirez-le avec page.Driver.switch_to_window (gérer) mais cela n'a pas fonctionné
  • J'ai essayé de fermer la fenêtre à l'aide de page.Driver.close_window (page.Driver.current_window_handle) , puis passez à une nouvelle fenêtre page.Driver.switch_to_window (page.Driver.open_new_window) mais cela n'a pas fonctionné

    Je me sens comme si je ne comprends pas vraiment comment le navigateur / fenêtre relation fonctionne dans Capybara. Il semble également que la copie sur les cookies est une sorte de triche mon test d'intégration. J'espère qu'il y a une meilleure façon de réaliser tout cela dans les futures versions.


0 commentaires