【测试篇】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);

相关推荐
Dola_Pan3 小时前
Linux文件IO(二)-文件操作使用详解
java·linux·服务器
wang_book3 小时前
Gitlab学习(007 gitlab项目操作)
java·运维·git·学习·spring·gitlab
蜗牛^^O^4 小时前
Docker和K8S
java·docker·kubernetes
从心归零4 小时前
sshj使用代理连接服务器
java·服务器·sshj
IT毕设梦工厂5 小时前
计算机毕业设计选题推荐-在线拍卖系统-Java/Python项目实战
java·spring boot·python·django·毕业设计·源码·课程设计
Ylucius6 小时前
动态语言? 静态语言? ------区别何在?java,js,c,c++,python分给是静态or动态语言?
java·c语言·javascript·c++·python·学习
七夜zippoe6 小时前
分布式系统实战经验
java·分布式
是梦终空6 小时前
JAVA毕业设计176—基于Java+Springboot+vue3的交通旅游订票管理系统(源代码+数据库)
java·spring boot·vue·毕业设计·课程设计·源代码·交通订票
落落落sss6 小时前
sharding-jdbc分库分表
android·java·开发语言·数据库·servlet·oracle
码爸6 小时前
flink doris批量sink
java·前端·flink