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


感谢阅读,祝君暴富!

相关推荐
方也_arkling6 小时前
【Java-Day08】static / final / 枚举
java·开发语言
橙淮6 小时前
Spring Bean作用域与生命周期全解析
java·spring
Chengbei116 小时前
一站式源码安全检测工具、云安全 / APP / 小程序源码敏感信息递归多层目录扫描AK、JWT、手机号、身份证等敏感信息
java·开发语言·安全·web安全·网络安全·系统安全·安全架构
llz_1126 小时前
web-第一次课后作业
java·开发语言·idea
秋97 小时前
Java项目运行5天左右自动宕机:系统性定位与解决方案
java·开发语言·python
小江的记录本7 小时前
【JVM虚拟机】垃圾回收GC:垃圾收集器:CMS:核心原理、回收流程、优缺点、废弃原因(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·spring·面试·maven
DIY源码阁7 小时前
JavaSwing学生成绩管理系统 - MySQL版
java·数据库·mysql·eclipse
basketball6168 小时前
C++ NULL 和 nullptr 区别 以及 nullptr 的核心实现
java·开发语言·c++
JAVA面经实录9179 小时前
MyBatis面试题库
java·mybatis
小江的记录本9 小时前
【JVM虚拟机】垃圾回收GC:垃圾回收算法:标记-清除、标记-复制、标记-整理、分代收集(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·算法·安全·面试