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 @ 2024-04-01 23:18  rustling  阅读(58)  评论(0编辑  收藏  举报