Sélénium: comment garantir touches de navigation() fonctionne comme prévu sur différents sites?
Donc je suis concerné par
webdriver.navigate().back();
en particulier. Après la lecture de Comment fonctionne le bouton de Retour dans un navigateur web travail?
il m'a fait penser à comment puis-je assurez-vous que le bouton se comporte comme prévu?
Voici différentes manières de faire "retour" de navigation. Comment vous y prendriez-vous au sujet de la détection de l'approche à utiliser? Écouter si POST ou GET est faite? Écouter les requêtes AJAX et le plan le plan approprié?
a) navigate back() (essentially hitting back button in firefox)
b) make GET request to the previous page url
c) click on "return to results" on current page
avec une) back()
parfois ne fonctionnent pas correctement pour AJAX sites avec pas de chapelure. ou de POSTER les résultats de la recherche où, par exemple, appuyez sur précédent invite de message d'alerte.
avec b) mon souci est que les url peuvent ne pas correspondre,
ex) url dynamiques avec de hachage unique sessionid paramètres
http://www.aa.com/results.php?sessionid=29756293changeseverytime
Alors, comment puis-je créer une éventualité à assurez-vous que l'arrière de la navigation fonctionne correctement comme prévu pour une variété d'applications web et des sites (il y a beaucoup de variabilité dans la façon dont le bouton précédent permet de se comporter).
OriginalL'auteur KJW | 2011-11-15
Vous devez vous connecter pour publier un commentaire.
Pourquoi ne pas stocker l'emplacement de la page que vous souhaitez vérifier, frapper un lien, utilisez le goBack, puis vérifiez l'emplacement de vérifier les variables (celui que vous avez stockées et l'emplacement de l'vérifiez la page)?
Par ailleurs, si votre site utilise AJAX je vous suggère d'utiliser la fonction de pause qui attend l'AJAX lib. Pour charger complètement, ou de régler la vitesse de votre site (peut-être les combiner dans de rares cas).
aussi ce sur les pages qui sont arrivés par la POSTE.
Si vous avez peur de l'id de session, vous pouvez construire votre propre validation: stocker l'adresse de base de votre site(après l'avoir ouvert, vous pouvez stocker votre adresse de variable), à propos de la session, vous aurez besoin de quelques comment l'obtenir: à partir d'un élément du site(peut-être une balise meta, je ne sais pas). et par quoi avez-vous des pages qui sont arrivés par la poste?
ainsi, par exemple, une requête de recherche effectue une requête POST et le résultat en serait la ssss.com/results.php. l'URL est la même, mais les pages sont complètement différents. lorsque vous cliquez sur un lien et puis revenir en arrière(), ce qui se passe? comment ne bouton de retour se comporter pour les requêtes POST? parfois, vous ne pouvez pas revenir en arrière.
le sélénium est de faire ce que nous faisons avec nos navigateurs. N'avez-vous pas toujours une recherche dans google et cliquez sur arrière - Nous revenir à la dernière page, à moins qu'il y est un JS qui le rate. Le principal problomes avec des formes, c'est quand nous envoyer les données, le site n'a pas nous passer de l'autre page et de nous rafraîchir la page nous avons l'alerte car votre navigateur enregistrer la validation des données. Vous avez besoin de vérifier la façon dont votre site se comporter quand il travail bien et puis rédigez votre sélénium tests. Et pour la recherche de tests: je voudrais vérifier que mes travaux de recherche bien que je vérifie que le retourné les résultats de la recherche contient ma recherche de mots clés.
OriginalL'auteur Roy Segall