【问题标题】:Protractor: Is it possible to reload/refresh frame in protractor?量角器:是否可以在量角器中重新加载/刷新帧?
【发布时间】:2015-03-18 10:30:32
【问题描述】:

量角器是否允许刷新单个帧而不是使用browser.refresh() 刷新整个页面?

【问题讨论】:

    标签: selenium selenium-webdriver protractor end-to-end


    【解决方案1】:

    一个框架有一个与之关联的Window 对象,它是保存框架内容的窗口。它位于名为.contentWindow 的字段中,非常方便。这个窗口有一个location 字段,它有一个reload() 方法。所以,假设你的框架有"frame" 的id:

    browser.executeScript("document.getElementById('frame').contentWindow.location.reload();");
    

    或者,如果您已经在 J​​avaScript 端引用了您的框架,并且它位于 frame 变量中:

    browser.executeScript("arguments[0].contentWindow.location.reload();", frame.getWebElement());
    

    【讨论】:

      【解决方案2】:

      诀窍是重置框架的src 属性(source),未测试:

      var frame = element(by.id("myFrame"));
      browser.executeScript("arguments[0].src = arguments[0].src", frame.getWebElement());
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-07-31
        相关资源
        最近更新 更多