Selenium:如何确保back()导航在不同站点上按预期工作?

KJW*_*KJW 5 firefox post selenium get browser-history

所以我很关心

webdriver.navigate().back();
Run Code Online (Sandbox Code Playgroud)

特别是.之后阅读网页浏览器中的"后退"按钮如何工作?

它让我想到如何确保后退按钮按预期运行?

这是进行"后退"导航的不同方式.您将如何检测使用哪种方法?听听POST或GET是否正在制作?听取AJAX请求并制定适当的计划?

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
Run Code Online (Sandbox Code Playgroud)

a)back()有时无法正常运行没有面包屑的AJAX网站.或者对于POST搜索结果,例如按下后将提示警报消息.

与b)我担心的是网址可能不匹配,

ex)具有唯一哈希sessionid参数的动态URL

http://www.aa.com/results.php?sessionid=29756293changeseverytime

那么我如何创建一个意外事件来确保后导航按预期正常运行各种Web应用程序和站点(后退按钮的行为方式有很多变化).

Roy*_*all 8

为什么不存储要验证的页面的位置,点击链接,使用goBack,然后验证检查变量的位置(存储的位置和验证页面的位置)?

顺便说一句,如果你的网站使用AJAX,我建议你使用等待AJAX​​ lib的pause函数.要完全加载或设置站点的速度(可能在极少数情况下将它们组合在一起).