【发布时间】:2015-03-18 10:30:32
【问题描述】:
量角器是否允许刷新单个帧而不是使用browser.refresh() 刷新整个页面?
【问题讨论】:
标签: selenium selenium-webdriver protractor end-to-end
量角器是否允许刷新单个帧而不是使用browser.refresh() 刷新整个页面?
【问题讨论】:
标签: selenium selenium-webdriver protractor end-to-end
一个框架有一个与之关联的Window 对象,它是保存框架内容的窗口。它位于名为.contentWindow 的字段中,非常方便。这个窗口有一个location 字段,它有一个reload() 方法。所以,假设你的框架有"frame" 的id:
browser.executeScript("document.getElementById('frame').contentWindow.location.reload();");
或者,如果您已经在 JavaScript 端引用了您的框架,并且它位于 frame 变量中:
browser.executeScript("arguments[0].contentWindow.location.reload();", frame.getWebElement());
【讨论】:
诀窍是重置框架的src 属性(source),未测试:
var frame = element(by.id("myFrame"));
browser.executeScript("arguments[0].src = arguments[0].src", frame.getWebElement());
【讨论】: