Python自动化测试工具-selenium

官网 https://www.selenium.dev/

准备测试环境

使用selenium需要 python3 + selenium + chrome

前提条件

  • Python3已安装
  • 谷歌浏览器已安装

安装步骤

  1. 安装selenium pip install selenium
  2. 安装 chrome driver

下载与谷歌浏览器对应的版本:

谷歌浏览器版本版本 126.0.6478.62(正式版本) (64 位),可以下载对应文件/chrome-for-testing/126.0.6478.7/win64/chromedriver-win64.zip,下载后可以解压到Python安装目录下

测试是否安装成功

# coding=utf8
import time
from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()
driver.get('http://www.baidu.com')

driver.find_element(By.ID, "kw").send_keys("selenium")
driver.find_element(By.ID, "su").click()

time.sleep(3)
driver.quit()

注意: selenium 版本 4.21.0
Selenium 4之后的版本,原来的find_element_by_*方法已被弃用,继续使用会报AttributeError

Selenium IDE

浏览器插件,方便录制操作。https://www.selenium.dev/selenium-ide/

常用元素定位

# 通过ID定位元素并点击
element_by_id = driver.find_element(By.ID, "element_id")
element_by_id.click()

# 通过Name定位元素并输入文本
element_by_name = driver.find_element(By.NAME, "element_name")
element_by_name.send_keys("Hello by Name")

# 通过Class Name定位元素并点击
element_by_class_name = driver.find_element(By.CLASS_NAME, "element_class")
element_by_class_name.click()

# 通过Tag Name定位元素并输入文本
element_by_tag_name = driver.find_element(By.TAG_NAME, "input")
element_by_tag_name.send_keys("Hello by Tag Name")

# 通过Link Text定位元素并点击
element_by_link_text = driver.find_element(By.LINK_TEXT, "Click Here")
element_by_link_text.click()

# 通过Partial Link Text定位元素并点击
element_by_partial_link_text = driver.find_element(By.PARTIAL_LINK_TEXT, "Click")
element_by_partial_link_text.click()

# 通过CSS Selector定位元素并点击
element_by_css_selector = driver.find_element(By.CSS_SELECTOR, ".class_name")
element_by_css_selector.click()

# 通过XPath定位元素并输入文本
element_by_xpath = driver.find_element(By.XPATH, "//input[@id='element_id']")
element_by_xpath.send_keys("Hello by XPath")

参考文档

  1. https://cloud.tencent.com/developer/article/2308489
posted @   rustling  阅读(68)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示