jquery - 单击在 Selenium 和 nightwatch 中不起作用

标签 jquery selenium

我在 nightwatch 方面遇到了这个问题,其中 .click() 不适用于选择器。我添加了 --verbose 参数,它显示了此消息“在点 (525, 560) 处不可点击”。它可以与常规 jquery 执行一起使用,但我需要它在 nightWatch 命令和 selenium 上工作。

我创建了一个自定义单击命令,其中包括在单击之前查看对象是否可见的验证。我在下面添加这个函数,以及 --verbose 参数的完整错误。

module.exports.command = function(source) {
  let self = this

    self
  .waitForElementVisible(source,6000)

  .click(source)

  return self
}

value: { message: '未知错误: 元素...在点 (525, 560) 处不可点击。其他元素将收到点击:...\n( session 信息:chrome=61.0.3163.100)\n(驱动程序信息:chromedriver=2.33.506092(733a02544d189eeb751fe0d7ddca79a0ee28cce4),platform=Linux 4.4.0-97-generic x86_64)' } }

最佳答案

为了避免来自 selenium 的错误,您必须将指针移动或悬停到该位置,您可以使用 .moveToElement 来做到这一点。

您还可以在文档nightwatch-docs中看到它的用法。

只是为了澄清这并不是真正的守夜人错误,而是 Selenium 错误。

module.exports.command = function(source) {
  let self = this

    self
  .waitForElementVisible(source,6000)
  .moveToElement(source,undefined, undefined)
  .click(source)

  return self
}

关于jquery - 单击在 Selenium 和 nightwatch 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46917536/

相关文章:

javascript - 如何替换 JQuery 属性中的子字符串

jquery - 如何在不同页面访问phonegap数据库?

java - 如何在 webdriver 中使用 $x ("//input[@id=' searchInput']") xpath 因为它给出了完成语句的错误

java - 如何单击表中的<a>类,Selenium(日历)

angularjs - 使用 multiCapabilites 时的多个 onPrepare 或动态登录参数

jquery - 使用 jquery 或 css 的垂直居中图像

jquery - 使用 Greasemonkey 将可拖动窗口添加到页面

javascript - 是否可以从 html 工作文件更新变量值?

java - 如何使用java selenium中的循环从项目网格中查找相同的元素?

python - Selenium 在单击后给出服务器错误 500(Django、pytest)