鼠标操作演示 · 左击

左击 click — WebElement.click() vs ActionChains.click(el)
首页 鼠标操作导航

当前演示 · 左击 click

演示 Selenium ActionChains 中最基础也是最常用的 click() 左击操作。

两种点击方式对比:

⚠️ 常见坑:元素被遮挡时 click() 会抛 ElementClickInterceptedException,此时用 execute_script('arguments[0].click()', el) 走 JS 点击可以绕过遮挡检测,但可能触发不了正常的事件冒泡。

💡 实战经验:90% 场景用 el.click() 就够了,只有需要组合拖拽/悬停/双击时才用 ActionChains。

左击 右击 双击 移动 按住 释放 拖拽 滚动
01 · 左击

左击 click(最基础的鼠标操作)

ActionChains(driver).click(el).perform()
click() 的两种写法:
① element.click() —— 最简单,直接在元素上调用
② ActionChains(driver).click(element).perform() —— 适合和 hover / 拖拽 / 按键等其他动作链式组合; click(el) 会自动先 move_to_element(el),换成无参 click() 则点"当前鼠标位置"(初始坐标 (0, 0),即视口左上角),需要前面先链 move_to_element / move_to_element_with_offset 等把鼠标送到位
左击演示:点击下面按钮,数字 +1
0
点击次数
操作说明:
• 鼠标左键单击 计数器按钮
• 观察数字变化 & 按钮反馈(缩放动画)
• 对应 Selenium API:el.click() 或 ActionChains(driver).click(el).perform()
[状态] 等待左击操作...
Python Selenium · 左击 click
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.action_chains import ActionChains

# 1. 启动浏览器 + 打开演示页面
driver = webdriver.Chrome()
driver.get("https://autotest-505.pages.dev/mouse_op_tech_sections/mouse_click_tech.html")

# 2. 定位元素
counter = driver.find_element(By.ID, "clickCounter")

# 方式①:直接 click(最常用)
counter.click()

# 方式②:ActionChains.click(可链式组合)
# click(el) 内部会先自动 move_to_element(el),再无参 click() 点当前位置
actions = ActionChains(driver)
actions.click(counter).perform()

# 方式②的等价写法:显式链 move_to_element + 无参 click()
actions.move_to_element(counter).click().perform()

# 3. 操作完成后关闭浏览器
driver.quit()
打开 查看属性 复制
重命名 删除

关于我们

Python 自动化测试学习平台是一个面向软件测试工程师、开发人员及在校学生的交互式在线学习平台,专注于 Selenium WebDriver 与 Python unittest 自动化测试技能的教学与实践。

我们以"理论 + 实战 + 可交互演示"为核心特色,将八种常规元素定位和Javascript定位、元素操作、自动化测试工具、单元测试、测试模型等知识体系拆分为模块化课程,每个模块都配有可点击、可输入、可运行的模拟练习页面。

平台致力于降低自动化测试的入门门槛,让学习者从"看懂代码"到"动手实操",逐步掌握企业级自动化测试框架的设计与落地能力。

联系方式

📧邮箱:lq@selenium-auto-test.com

📞电话:0755-12345678

📍地址:深圳

💬微信公众号:Selenium自动化测试

🐙GitHub:github.com/selenium-auto-test

免责声明

1. 本平台所有示例代码、演示页面及教程内容均仅供学习交流使用,不构成任何商业推广或技术服务承诺。

2. 平台中的 Selenium API 描述、Python 语法说明均以官方文档为准,如有版本差异请以对应官方文档为准。

3. 学习者在实际项目中应用平台所学内容时,应结合自身项目环境进行充分测试,本平台不对因直接使用示例代码而产生的任何直接或间接损失承担责任。

4. 本平台所引用的第三方库(Selenium、ChromeDriver、unittest 等)版权归其各自作者及维护者所有。

5. 如涉及版权问题或内容建议,请及时通过联系方式与我们沟通,我们将第一时间处理。