【测试篇】Selenium + Java环境搭建

文章目录

Selenium + Java环境搭建

Java版本最低要求为8,这里默认大家都下载好了Java。😆

  1. 下载chrome浏览器(点我下载)

  2. 观察chrome版本。

  3. 下载 chrome 浏览器驱动(根据浏览器版本,选择驱动版本)

    如果是更高版本的浏览器,可以下载测试版本的驱动

配置系统环境变量PATH

  1. 解压下载好的驱动压缩包,将下载好的chromedriver.exe放到chrome浏览器安装路径下

  2. 复制chrome浏览器安装路径,开始配置环境变量

    新建然后复制地址,后续一路确定确定......

验证环境是否搭建成功

  1. 在 Java 中创建一个maven项目,在 pom.xml 文件中添加依赖。

    xml 复制代码
    <dependencies>
        <!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>3.141.59</version>
        </dependency>
    </dependencies>
  2. 编写代码运行

    java 复制代码
    import org.openqa.selenium.chrome.ChromeDriver;
    import org.openqa.selenium.WebDriver;
    
    public class Main {
        public static void main(String[] args) {
            WebDriver webDriver = new ChromeDriver();
            webDriver.get("https://www.baidu.com");
        }
    }

    如果打开了浏览器,,此时说明安装成功。

常见问题&解决办法

  1. SessionNotCreatedException

    原因:selenium 找不到 Chrome.exe 的安装路径。

    解决办法:确认你下载的谷歌浏览器不是盗版的,其次确认你的chrome浏览器是否默认安装在C盘下。

    驱动实例化中使用绝对路径:

    ChromeDriver driver = new ChromeDriver("E:/browser/Google/Chrome/Application/chrome.exe); //注意:这里放自己的Chrome.exe所在路径,不要盲目复制粘贴。

  2. The version of ChromeDriver only support xxxxxxxxx

    原因:浏览器版本和驱动版本不匹配,重新在官网下载对应版本的驱动。

    下载地址:https://chromedriver.chromium.org/downloads

  3. The path to the driver executable the path to

    原因:浏览器驱动没有放到系统环境变量下

    解决办法(二选一即可):

    1. 找到驱动所在路径,复制路径并添加系统环境变量
    2. 创建驱动对象之前手动指定chromedriver.exe所在路径:System.setProperty("webdriver.chrome.driver","C:\ProgramFiles\Java\jdk1.8.0_192\chromedriver.exe")灵活调整。
  4. ConnectionFailedException/403

    解决办法:

    ChromeOptions options = new ChromeOptions();

    options.addArguments("--remote-allow-origins=*");

    WebDriver driver = new ChromeDriver(options);

相关推荐
04Koi.28 分钟前
八股训练--Spring
java·后端·spring
Dcs1 小时前
微软 Copilot 被“越狱”?安全研究员教你一招拿下“沙箱环境 Root 权限”!
java
℡余晖^1 小时前
每日面试题18:基本数据类型和引用数据类型的区别
java
hello 早上好2 小时前
消息顺序、消息重复问题
java·中间件
phltxy2 小时前
ArrayList与顺序表
java·算法
Doris_LMS2 小时前
保姆级别IDEA关联数据库方式、在IDEA中进行数据库的可视化操作(包含图解过程)
java·mysql·postgresql
衍生星球2 小时前
JSP 程序设计之 Web 技术基础
java·开发语言·jsp
Java编程乐园3 小时前
Java函数式编程之【Stream终止操作】【下】【三】【收集操作collect()与分组分区】【下游收集器】
java
yinyan13143 小时前
一起学springAI系列一:初体验
java·人工智能·ai
永卿0013 小时前
设计模式-责任链模式
java·设计模式·责任链模式