WebdriverIO browser.click gives error “Other element would receive the click”. How do I fix?
当我尝试运行它时,我的webdriverIO硒代码出现以下错误:
Failed: unknown error: Element is not
clickable at point (389, 709). Other element would receive the click:
< html lang="en">...< /html >
这是相关的代码:
1 2 3 | const checkboxSelector = getAttributeSelector('data-test', 'manual-checkbox'); browser.click(checkboxSelector); |
如何摆脱这个错误?
- - 附加信息 - -
该测试正在使用chromedriver运行:
1 2 3 4 5 | var desktop = exports.desktop = [{ browser: 'Chrome', os: 'Windows', os_version: '7' }]; |
您的页面是否可能包含隐藏的元素或选择器可能针对的多个元素? 当我看到此错误时,通常我的单个选择器可能会在幕后针对另一个元素。 消息"其他元素将获得点击"通常是表明它可能已拾取多个元素的关键,而您打算单击的元素并不是脚本将要单击的元素。
您可以通过在浏览器控制台中使用CSS选择器来测试
1 | $$('data-test') |
如果看到返回了多个元素,则可能需要对选择器进行更具体的说明,以更精确地缩小要执行的操作的范围。
似乎问题在于您需要滚动到适当的元素以单击该按钮。 不知道为什么它不是自动的,但是使用
1 2 3 4 | const checkboxSelector = getAttributeSelector('data-test', 'manual-checkbox'); browser.scroll(checkboxSelector); browser.click(checkboxSelector); |
问题解决了