我在 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/