java selenium 元素点击不了

最近做了一个页面爬取,很有意思被机缘巧合下解决了。

这个元素很奇怪,用xpath可以定位元素,但是就是click()不了。

试过了网上搜的一些办法:

java 复制代码
//尝试一
WebElement a_tag = driver.findElement(By.xpath("xxx"));
a_tag.click();//点击不了,卡住

//尝试二
WebDriverWait wait = new WebDriverWait(driver, 100);
wait.until(ExpectedConditions.elementToBeClickable(a_tag)).click();//点击不了,卡住

//尝试三
Actions actions = new Actions(driver);
actions.moveToElement(a_tag).perform();
actions.click()//没报错,但实际没起作用

然后无意一次尝试,神奇的事情发生了:

java 复制代码
//把action和a_tag结合起来用,先action.perform一下,不要点,再用a_tag点
WebElement a_tag = driver.findElementByXpath("xxx");
 Actions actions = new Actions(driver);
 actions.moveToElement(a_tag).perform();//action先perform一下,不要点
 a_tag.click();//用元素点,顺利执行,并起作用

而且更神奇的是,只有这种组合(即先action.perform再a_tag.click)起作用,别的组合和顺序都不起作用。

虽然问题解决了,但是还不知道是什么原理。有大神了解吗?

相关推荐
ClouGence14 小时前
不搭 Selenium 或 Playwright,怎么测试公司的内网业务?
selenium·测试
螺丝钉tina6 天前
[Playwright] [02]常用命令与调试:Debug UI、Mode和 Trace Viewer
开发语言·javascript·测试工具·ui·自动化
梧桐1686 天前
14天、31个缺陷、28个测试脚本—用 Claude Code 完成第三方软件测试
人工智能·测试工具
mewowaBc7 天前
postman使用细则
测试工具·postman·偏差
光影6277 天前
Unittest单元测试基础速记
测试工具·单元测试·json·测试覆盖率
xie881018028 天前
正则里的点号不匹配换行:多行模式的开关
运维·服务器·测试工具
2601_967987379 天前
Python在自动化测试中有哪些应用?
python自动化测试·selenium·appium·pytest·性能测试
东舟技术9 天前
从人工目检到AI视觉:智能座舱瞬态故障的自动化捕获与溯源
功能测试·测试工具·自动化
小猿A10 天前
【2026最新】Apifox下载、配置、实战教程(附官网安装包)
测试工具
泽众云测试10 天前
泽众软件与广州华南检验检测中心签约,PerformanceRunner性能测试工具助力第三方测评机构性能检测能力升级
软件测试·测试工具·性能测试