机器人框架 Selenium2Library 中的无缓存刷新

问题描述 投票:0回答:2

我有一个用 python 机器人框架编写的测试脚本,它可以浏览网站并测试其页面。该网站有时需要从服务器刷新其所有内容,即它需要无缓存刷新。

Robot Framework selenium2library 有一个

reload page
方法,它简单地执行 Refresh-If-Modified。在 Python 中,我可以使用
driver.refresh()
来做同样的事情。

我在机器人框架中尝试了

Press Key
,在python中尝试了
driver.send_keys(Keys.COMMAND + Keys.F5)
driver.get(url)
;他们都没有成功!

知道怎么做吗?

澄清一下,一个

No-Cache Refresh
,从它的服务器检索所有网站数据,而不管它在服务器上的更改,但是一个
Refresh-If-Modified
首先向服务器发送请求并要求更改,然后它只请求检索修改后的数据.

python selenium webdriver robotframework
2个回答
0
投票

Chrome 和 Firefox 在 selenium 机器人启动这些浏览器时以不同的方式处理缓存。

确保清除浏览器缓存,我使用关闭所有浏览器关键字,因为它重置浏览器缓存(http://robotframework.org/Selenium2Library/doc/Selenium2Library.html#Close%20All%20Browsers)然后我打开再次浏览器。

所以也许您还会使用“删除所有 Cookies”关键字


0
投票

您可以通过 javascript 的

location.reload()
,将
true
传递给调用 - https://developer.mozilla.org/en-US/docs/Web/API/Location/reload

Execute Javascript    window.location.reload(true);

然而 YMMV - 一些浏览器试图超越它,这是 js 开发人员的常见问题。

© www.soinside.com 2019 - 2024. All rights reserved.