【问题标题】:Focus Protractor/Webdriver browser test windowFocus Protractor/Webdriver 浏览器测试窗口
【发布时间】:2013-12-11 17:27:59
【问题描述】:

我正在尝试在测试开始时聚焦 Protractor/Webdriver 浏览器测试窗口。焦点是指测试窗口应该出现在屏幕上显示的其他窗口之上,现在它出现在其他窗口之下。

使用 Selenium chromedriver 并从 WebStorm 启动 Protractor。

我在场景规范的开头尝试了以下操作,但没有任何效果:

browser.driver.switchTo().defaultContent();
browser.driver.switchTo().window(browser.driver.getWindowHandle());
browser.switchTo().window(browser.getWindowHandle());
browser.driver.executeScript('window.focus();')

【问题讨论】:

  • 尝试点击窗口中的任何位置? click 总是把被点击的窗口放在最上面。
  • 我也遇到了同样的问题,你最终解决了吗?
  • @giosakti:不,还没有找到解决方案。如果我找到答案,我会添加答案。
  • @RăzvanPanda 有什么更新吗?

标签: angularjs selenium webdriver selenium-webdriver protractor


【解决方案1】:

这不是 Webdriver 可以做的,因为它只控制您的测试窗口,而不是您操作系统的窗口管理器。但是,有一个 Chrome 标志可以解决问题:

capabilities: {
    'browserName': 'chrome',
    'chromeOptions': {
        'args': ['--start-maximized']
    }
}

这属于您的protractor.conf.js 文件。

Chrome 窗口一打开,就会最大化。在我的系统上,这把它放在前面。您的里程可能会有所不同。

【讨论】:

    【解决方案2】:

    您可能希望在浏览器启动后使用 conf.js 中的 onPrepare 来截取屏幕截图。这将使窗口成为焦点。

    onPrepare: function() {
       return browser.takeScreenshot();
    },
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-29
      • 2020-03-14
      • 1970-01-01
      • 1970-01-01
      • 2011-08-07
      相关资源
      最近更新 更多