目录
1. Selenium 简介
2. 使用 Selenium
2.1 Java 使用 Selenium
2.2 Python 使用 Selenium
2.3 支持的浏览器及 WebDriver
3. ChromeDriver 的安装
3.1 查看本机 Chrome 版本
3.2 匹配对应的 ChromeDriver 并下载
3.3 配置 ChromeDriver 路径
3.4 在服务器(如 CentOS)上安装 Chrome
Java中使用Selenium的代码示例:
4. Selenium 内容详解
4.1 Chrome 启动参数示例
4.2 元素定位方式
4.3 其他定位技巧
Selenium 是一个开源的 Web 自动化测试框架,支持多种编程语言(如 Java、Python、C# 等),可模拟用户操作浏览器。
<dependency>
<groupId>org.seleniumhq.seleniumgroupId>
<artifactId>selenium-javaartifactId>
<version>4.10.0version>
dependency>
<dependency>
<groupId>org.seleniumhq.seleniumgroupId>
<artifactId>selenium-chrome-driverartifactId>
<version>4.9.0version>
dependency>
<dependency>
<groupId>org.testnggroupId>
<artifactId>testngartifactId>
<version>7.4.0version>
<scope>testscope>
dependency>
3.下载对应的浏览器 WebDriver(如 ChromeDriver)。
pip install selenium
3.下载对应的浏览器 WebDriver(如 ChromeDriver)。
下面以Chrome浏览器来举例:
在 Chrome 浏览器地址栏输入 chrome://version/
,查看浏览器版本,例如 126.0.6478.57
。
方法一:
访问 ChromeDriver 官方下载站:https://chromedriver.chromium.org/downloads下载与 Chrome 版本匹配的 ChromeDriver。
方法二:
将下载的 ChromeDriver 放置到固定路径,如:D:\Drivers\chromedriver-win64。
并将其路径添加到系统环境变量(可选)。
curl https://intoli.com/install-google-chrome.sh | bash
google-chrome --version
按照前述方法下载匹配版本的 ChromeDriver 并解压。
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
public class GoogleSearchTest {
private WebDriver driver;
@BeforeMethod
public void setUp() {
// 设置WebDriver路径
System.setProperty("webdriver.chrome.driver", "D:\\Drivers\\chromedriver-win64");
// 初始化WebDriver
driver = new ChromeDriver();
}
@Test
public void testGoogleSearch() {
// 打开Google首页
driver.get("https://www.google.com");
// 等待页面加载完成
driver.manage().timeouts().implicitlyWait(10, java.util.concurrent.TimeUnit.SECONDS);
// 寻找搜索框元素并输入搜索词
driver.findElement(By.name("q")).sendKeys("Selenium");
// 点击搜索按钮
driver.findElement(By.name("btnK")).click();
// 验证页面标题是否包含搜索词
assert driver.getTitle().contains("Selenium");
}
@AfterMethod
public void tearDown() {
// 关闭浏览器
driver.quit();
}
}
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver", "D:\\Drivers\\chromedriver-win64");
ChromeOptions options = new ChromeOptions();
options.addArguments("--disable-extensions");
options.addArguments("--headless");
options.addArguments("window-size=1920x3000");
options.addArguments("start-maximized");
options.addArguments("--disable-gpu");
options.addArguments("--user-data-dir");
options.addArguments("--disable-popup-blocking");
options.addArguments("--no-sandbox");
options.addArguments("--disable-web-security");
options.addArguments("--ignore-certificate-errors");
options.addArguments("--incognito");
}
driver.findElement(By.id("id值"));
driver.findElement(By.cssSelector("input[type='submit']"));
driver.findElement(By.className("elementClass"));
driver.findElement(By.tagName("input"));
driver.findElement(By.name("elementName"));
driver.findElement(By.linkText("Link Text"));
driver.findElement(By.partialLinkText("Partial Link Text"));
driver.findElement(By.xpath("//input[@type='submit']"));
本指南介绍了 Selenium 的基本概念、功能及其在 Java 中的使用方法,同时详细讲解了 ChromeDriver 的安装步骤和 Selenium 的核心功能。希望大家有所帮助!