Java环境搭建Selenium代码自动化测试框架

 更新时间:2026年01月02日 15:12:01   作者:一只爱打拳的程序猿  
selenium是用来做web自动化测试框架,它支持各种浏览器(Chrome等),各种平台(Windows、Linux等),支持各种语言(Python、Java等),具有丰富的API,本文介绍了自动化测试的概念及其分类,重点介绍了Selenium自动化测试框架,包括其工作原理、环境搭建流程以及遇到问题的解决方法

1. 什么是自动化测试?

自动化测试就是将人工测试变为让代码进行测试,可提高效率。自动化分类有:单元测试、接口测试、UI自动化测试等。

1.1 Selenium是什么?

selenium 是用来做 web 自动化测试框架,它支持各种浏览器(Chrome等),各种平台(Windows、Linux等),支持各种语言(Python、Java等),具有丰富的 API。

1.2 Selenium工作原理

idea 编写自动化脚本代码后,通过 WebDriver 浏览器驱动,将自动化脚本中的指令转换为浏览器能够理解的操作。

2. Selenium+Java环境搭建流程

2.1 下载Chrome浏览器

2.2 复制浏览器版本号

查看浏览器版本,并复制版本号前三位,如我的版本号为 135

2.3 进入chromedriver官网

进入 chromedriver 官网

2.4 下载对应的版本

找到你对应版本号的 win 64 下载即可。

2.5 配置环境变量

将你下载好的文件路径保存到 Path 底下。

2.6 打开Maven中央仓库

找到你想下载的版本,并复制。

2.7 添加依赖到idea

粘贴至 idea pom.xml 里,刷新 maven

2.8 测试环境是否搭建成功

public class Test {
    public static void main(String[] args) {
        ChromeOptions options = new ChromeOptions();
        options.addArguments("---remote-allow-origins=*");
        WebDriver webDriver = new ChromeDriver(options);
        webDriver.get("https://www.baidu.com");
    }
}

运行代码后自动跳出百度网页则代表成功,"---remote-allow-origins=*" 为允许所有版本。

2.9 出现错误解决方案

selenium 依赖版本改为 3.141.59 。

<dependencies>
        <!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>3.141.59</version>
        </dependency>
</dependencies>

2.10 运行成功

3. 总结

到此这篇关于Java环境搭建Selenium代码自动化测试框架的文章就介绍到这了,更多相关Java搭建Selenium自动化测试内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java中ThreadLocal使用原理及Synchronized区别

    Java中ThreadLocal使用原理及Synchronized区别

    ThreadLocal叫做线程变量,本文详细的介绍了ThreadLocal使用原理及Synchronized区别,有需要的朋友可以参考一下,希望对你有所帮助。
    2023-05-05
  • 详解Java ScheduledThreadPoolExecutor的踩坑与解决方法

    详解Java ScheduledThreadPoolExecutor的踩坑与解决方法

    最近项目上反馈某个重要的定时任务突然不执行了,很头疼,开发环境和测试环境都没有出现过这个问题。定时任务采用的是ScheduledThreadPoolExecutor,后来一看代码发现踩了一个大坑。本文就来和大家聊聊这次的踩坑记录与解决方法,需要的可以参考一下
    2022-10-10
  • Spring Cloud 部署时使用 Kubernetes 作为注册中心和配置中心的方法

    Spring Cloud 部署时使用 Kubernetes 作为注册中心和配置中

    Spring Cloud Kubernetes提供了使用Kubernete本地服务的Spring Cloud通用接口实现,这篇文章主要介绍了Spring Cloud 部署时如何使用 Kubernetes 作为注册中心和配置中心,需要的朋友可以参考下
    2024-05-05
  • Java中Map的entrySet()使用说明

    Java中Map的entrySet()使用说明

    这篇文章主要介绍了Java中Map的entrySet()使用说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-09-09
  • Java网络编程之UDP协议详细解读

    Java网络编程之UDP协议详细解读

    这篇文章主要介绍了Java网络编程之UDP协议详细解读,UDP协议全称是用户数据报协议,在网络中它与TCP协议一样用于处理数据包,是一种无连接的协议,在OSI模型中,在第四层——传输层,处于IP协议的上一层,需要的朋友可以参考下
    2023-12-12
  • Java基于NIO实现群聊系统

    Java基于NIO实现群聊系统

    这篇文章主要为大家详细介绍了Java基于NIO实现群聊系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • idea下如何设置项目启动的JVM运行内存大小

    idea下如何设置项目启动的JVM运行内存大小

    这篇文章主要介绍了idea下如何设置项目启动的JVM运行内存大小问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • Java8默认方法Default Methods原理及实例详解

    Java8默认方法Default Methods原理及实例详解

    这篇文章主要介绍了Java8默认方法Default Methods原理及实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01
  • SpringDataJpa创建联合索引的实现

    SpringDataJpa创建联合索引的实现

    这篇文章主要介绍了SpringDataJpa创建联合索引的实现,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • Mybatis输入输出映射问题解读(共三种类型)

    Mybatis输入输出映射问题解读(共三种类型)

    MyBatis使用OGNL表达式解析对象字段值,使用#{}或${},#{}为占位符,${}用于SQL拼接,输出resultMap时,若列名与POJO属性名名不一致,需配置resultMap,使用<collection>标签进行嵌套查询,需指定collection的属性名,参数传递格式:column=参数名=表字段
    2026-04-04

最新评论