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