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


感谢阅读,祝君暴富!

相关推荐
MY_TEUCK13 小时前
【Java 后端】SpringBoot 登录认证与会话跟踪实战(JWT + Filter/Interceptor)
java·开发语言·spring boot
今天长肉了吗13 小时前
银行风控项目踩坑实录:指标跑了6小时,风险评分全挂了
java
随读手机14 小时前
多式联运信息交互平台完整方案(2026版)
java·ai·eclipse·云计算·区块链
许彰午15 小时前
03-二叉树——从递归遍历到非递归实现
java·算法
nj012815 小时前
Spring 循环依赖详解:三级缓存、早期引用、AOP 代理与懒加载
java·spring·缓存
野生技术架构师15 小时前
2026年最全Java面试题及答案汇总(建议收藏,面试前看这篇就够了)
java·开发语言·面试
一只叫煤球的猫16 小时前
ThreadForge 源码解读一:ThreadScope 如何把并发任务放进清晰边界?
java·面试·开源
洛_尘16 小时前
Python 5:使用库
java·前端·python
程序员小假17 小时前
HTTP3 性能更好,为什么内网微服务依然多用 HTTP2?HTTP2 内网优势是什么?
java·后端
Mr数据杨17 小时前
【Codex】用教案主体模块沉淀标准化教学设计内容
java·开发语言·django·codex·项目开发