废话不说直接上干货 

selenium+java的意思就是用Java去编写selenium的自动化脚本,大概有三个步骤

第一步 创建项目工程

使用IDEA IDE 

导入selenium和junit(要按照自己jdk版本的依赖)

jdk8(我自己使用的)

 <dependencies>
        <!-- Selenium for Java 8 -->
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>3.141.59</version>
        </dependency>

        <!-- JUnit for Java 8 -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.13.2</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.13.1</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter</artifactId>
            <version>5.8.2</version>
            <scope>test</scope>
        </dependency>
        <!-- Apache Commons IO -->
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.11.0</version>
        </dependency>
    </dependencies>

点击这里

刷新依赖下载依赖

第二步 元素定位

根据自己的需求打开需要测试的网站

按F12打开开发者模板

点击这个然后再去选择需要的元素

这里做演示,当我点击了开发者工具的小箭头,这里的演示我选择了(发布博客按钮)相应的附着在右侧的开发者模板的元素会自动定位产生变化

这里只做简单的演示,当右侧的开发者模板产生变化那便是你需要的元素我们右击它

点击这个复制按钮

选择你要通过什么方法去定位它这里选择xpath

(selenium有八种定位方法这里只做入门教学,其他方法需要自己去扩展)

//*[@id="moreDiv"]/div[12]/div/div/div[2]/button[3]

这便是你需要的元素的位置

第三步 编写自动化脚本

创建java测试类

因为在写文章原因,我们以百度为测试对象

import org.junit.jupiter.api.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
import org.openqa.selenium.NoSuchElementException;

public class Test111 {
    private WebDriver driver;

    @Test
    public void test() throws InterruptedException {
        
            // 设置ChromeDriver路径
            System.setProperty("webdriver.chrome.driver", "H:\\chromedriver\\chromedriver.exe");

            // 配置Chrome选项
            ChromeOptions chromeOptions = new ChromeOptions();
            chromeOptions.addArguments("--remote-allow-origins=*");
            // 添加额外的选项以提高兼容性
            chromeOptions.addArguments("--no-sandbox");
            chromeOptions.addArguments("--disable-dev-shm-usage");

            // 初始化WebDriver
            driver = new ChromeDriver(chromeOptions);

            // 打开百度首页(注意使用英文冒号)
            driver.get("http://www.baidu.com");

            // 最大化窗口
            driver.manage().window().maximize();

            // 等待页面加载
            Thread.sleep(2000);

            // 在百度搜索框中输入内容(百度搜索框的id是kw)
            WebElement searchBox = driver.findElement(By.id("kw"));
            searchBox.sendKeys("测试成功");

            // 点击搜索按钮(百度搜索按钮的id是su)
            WebElement searchButton = driver.findElement(By.id("su"));
            searchButton.click();

            // 等待搜索结果加载
            Thread.sleep(3000);

       
        
    }
}

这就是selenium快速入门的模板

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐