关于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


感谢阅读,祝君暴富!

相关推荐
逍遥德7 分钟前
MQTT教程详解-05.SpringBoot集成mqtt client 性能分析
java·spring boot·spring·mt
云烟成雨TD11 分钟前
Spring AI 1.x 系列【54】Retry 机制分析
java·人工智能·spring
weixin_5231853214 分钟前
Collections.unmodifiableMap详解:真的不可修改吗?
java·linux·前端
点燃大海15 分钟前
SpringAI构建智能体
java·spring boot·spring·springai智能体
xier_ran17 分钟前
【infra之路】02_RadixAttention与KV_Cache管理
java·spring boot·spring
黑马师兄30 分钟前
RAG混合检索深度解析:让AI真正找到你要的内容
java·人工智能·ai·agent·rag·ai-native
码客日记35 分钟前
Spring Boot 配置文件敏感信息加密(Jasypt 企业级完整方案)
java·spring boot·git
凡人叶枫1 小时前
Effective C++ 条款04:确定对象被使用前已先被初始化
java·linux·开发语言·c++·嵌入式开发
极客先躯1 小时前
高级java每日一道面试题-2026年02月01日-实战篇[Docker]-Docker Volume 的生命周期管理是怎样的?
java·运维·docker·容器·持久化·架构图·容器卷
NE_STOP2 小时前
Raft算法处理细节
java