首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >量角器actions.keydown与硒actions.keydown

量角器actions.keydown与硒actions.keydown
EN

Stack Overflow用户
提问于 2018-11-01 13:52:36
回答 1查看 1.2K关注 0票数 1

量角器: 5.4.1 Selenium: 3.14 geckodriver: 0.23浏览器: firefox

嗨,当执行以下代码时,我收到一个错误"Failed: sendKeysToActiveElement“

browser.actions().keyDown(protractor.Key.CONTROL).click(elements).keyUp(protractor.Key.CONTROL).perform()

但是,如果我试图使用selenium而不是量角器来运行它,那么它可以使用以下代码

driver.actions({bridge:true}).keyDown(webdriver.Key.CONTROL).click(elements).keyUp(webdriver.Key.CONTROL).perform();

以前有人在这方面有经验吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-01 15:17:09

ProtractorSelenium JS代码片段的不同之处在于,表单不执行桥模式中的操作,而后者则执行这些操作。

从硒资料来源: v3.14

代码语言:javascript
复制
 * In bridge mode, {@link #perform perform()} will first attempt to execute the
 * configured action sequence using the W3C action protocol. If this is rejected
 * by the remote end, the sequence will be translated to and executed against
 * the legacy protocol.

看来Gecko可能不支持W3C动作协议,而动作中的错误是抛出

代码语言:javascript
复制
  if (this.bridge_
      && (ex instanceof UnknownCommandError
          || ex instanceof UnsupportedOperationError)) {
    return executeLegacy(this.executor_, this.sequences_);
  }
  throw ex;

尝试以桥模式运行您的动作,以便进行量角器测试。

代码语言:javascript
复制
actions = browser.actions({bridge: true})
actions.keyDown(protractor.Key.CONTROL)
  .click(elements)
  .keyUp(protractor.Key.CONTROL)
  .perform()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53102713

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档