关于Java Web自动化测试工具selenium所需的Maven依赖

天行健,君子以自强不息;地势坤,君子以厚德载物。


每个人都有惰性,但不断学习是好好生活的根本,共勉!


文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。

文章目录

    • [1. 旧版本依赖](#1. 旧版本依赖)
    • [2. 新版本依赖(推荐)](#2. 新版本依赖(推荐))
    • [3. 关于依赖导致报错的解决](#3. 关于依赖导致报错的解决)

执行程序前请先配置驱动:
关于Java selenium使用前浏览器驱动的下载和环境变量的配置

关于Selenium自动化测试工具的Java实现详情请参考文章:
如何查看页面对应的Selenium定位参数
Java实现 selenium Web自动化测试(简单篇)
Java实现 selenium Web自动化测试(详细篇)


l 复制代码
这里尝试了几种搭配,暂时以下两种可用
第一
就是网上大多数使用的3.0版本的依赖,版本号为3.141.59,该版本号的依赖需要搭配Guava依赖进行使用,
且Guava的依赖网上的22.0版本亲测似乎不可用,我用版本号含有jre后缀的依赖33.1.0-jre代替。
第二
是使用较新版本的selenium依赖版本,但使用最新版本4.20.0则会出现报错提示需要将jdk版本更新,
因为我使用的jdk版本为1.8,也就是说最新版本的依赖需要较新版本的jdk环境才可适配,
然后我试了4.10.0版本,可以使用

总结selenium的依赖可用以下两种方案,本篇选用新版依赖

1. 旧版本依赖

采用selenium旧版本搭配Guava使用

pom 复制代码
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>3.141.59</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.google.guava/guava -->
        <dependency>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
            <version>33.1.0-jre</version>
        </dependency>

2. 新版本依赖(推荐)

pom 复制代码
        <!--selenium java web 自动化测试-->
        <!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>4.10.0</version>
        </dependency>

3. 关于依赖导致报错的解决

如遇到以下两个报错可参考链接解决

Exception in thread "main" java.lang.NoSuchMethodError: com.google.common.collect.ImmutableMap.of(Lj

Exception in thread "main" java.lang.UnsupportedClassVersionError: org/openqa/selenium/devtools/v122


感谢阅读,祝君暴富!

相关推荐
雨奔21 小时前
Kubernetes DNS 完全指南:服务发现核心机制与实践
java·kubernetes·服务发现
逻辑驱动的ken21 小时前
Java高频面试考点场景题14
java·开发语言·深度学习·面试·职场和发展·求职招聘·春招
阿冰冰呀21 小时前
互联网大厂Java求职面试实录:谢飞机的“水货”之路
java·mybatis·dubbo·springboot·线程池·多线程·hashmap
水无痕simon21 小时前
1.单机部署Nacos1.3.2
java
Java小生不才1 天前
spring AI文生图
java·人工智能·spring ai
苍煜1 天前
ThreadPoolExecutor线程池终极全解:同步异步判定+SpringBoot生产实战
java·开发语言·spring boot
c++之路1 天前
C++ 动态内存
java·jvm·c++
2301_800976931 天前
数据库的基本操作后续
java·数据库·sql
SECS/GEM1 天前
SECS/GEM如何实现越南现场自定义消息
java·服务器·数据库
lv__pf1 天前
集合框架1
java·开发语言