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


感谢阅读,祝君暴富!

相关推荐
半瓶榴莲奶^_^1 小时前
jvm java虚拟机
java·jvm
invicinble7 小时前
这里对java的知识体系做一个全域的介绍
java·开发语言·python
wbs_scy7 小时前
【Linux 线程进阶】进程 vs 线程资源划分 + 线程控制全详解
java·开发语言
ss2737 小时前
食谱推荐系统功能测试如何写?
java·数据库·spring boot·功能测试
AI人工智能+电脑小能手8 小时前
【大白话说Java面试题】【Java基础篇】第15题:JDK1.7中HashMap扩容为什么会发生死循环?如何解决
java·开发语言·数据结构·后端·面试·哈希算法
try2find8 小时前
打印ascii码报错问题
java·linux·前端
014-code8 小时前
CompletableFuture 实战模板(超时、组合、异常链处理)
java·数据库
Nicander8 小时前
多数据源下@transcation事务踩坑
java·后端
それども9 小时前
DELETE 和 TRUNCATE TABLE区别
java·数据库·mysql
sjsjsbbsbsn10 小时前
大模型核心知识总结
java·人工智能·后端