自动化测试无法启动(java.net.SocketException)

news2025/4/10 14:22:50

在运行测试代码,对浏览器进行自动化操作时,遇到了以下问题,添加依赖,编写了测试代码,但是程序无法运行

这个有两种原因(我使用的是谷歌浏览器):

  1. 网络问题: 因为需要从GitHub上下载对应包,所以有时候可能会出现网络问题,这个时候可以打开VPN之后,重新对程序进行启动

  2. 浏览器版本过高,导致webdrivermanager中没有对应版本的驱动,此时可以改用 5.9.2及以上的版本重新尝试

如果以上方法都无法解决问题,就需要手动下载对应驱动 chrome依赖

因为原网站的问题,这个网址需要使用VPN来下载

或者从我的网盘下载:

链接: https://pan.baidu.com/s/13U2wgxHGhm7gL3quE_OaVQ?pwd=729b 提取码: 729b

但是记得查看自己的版本是否跟我一样

下载之后放入本地路径(要保证你能找到),路径中最好不要出现特殊字符(我直接将他放进了我的maven文件中)

然后更新代码

原代码:

public static void main(String[] args) throws InterruptedException {
    //驱动程序自动化
    WebDriverManager.chromedriver().setup();
    ChromeOptions options = new ChromeOptions();

    //允许访问所有连接
    options.addArguments("--remote-allow-origins=*");

    //设置完基础设置之后,就开始进行操作
    //1.打开对应的浏览器(首先要创建一个驱动对象)
    WebDriver webDriver = new ChromeDriver(options);
    Thread.sleep(5000);
    //2.输入对应网址,这里访问百度
    webDriver.get("https://www.baidu.com");
    Thread.sleep(5000);
    //3.找到输入框并进行搜索操作
    webDriver.findElement(By.xpath("//*[@id=\"kw\"]")).sendKeys("CSDN");
    Thread.sleep(5000);
    //4.找到搜索按钮
    webDriver.findElement(By.xpath("//*[@id=\"su\"]")).click();
    Thread.sleep(5000);
    //5.关闭浏览器
    webDriver.close();
}

新代码:

public static void main(String[] args) throws InterruptedException {
    //驱动程序自动化
    // 设置本地 ChromeDriver 路径
    System.setProperty("webdriver.chrome.driver", "设置本地 ChromeDriver 路径");
    ChromeOptions options = new ChromeOptions();

    //允许访问所有连接
    options.addArguments("--remote-allow-origins=*");

    //设置完基础设置之后,就开始进行操作
    //1.打开对应的浏览器(首先要创建一个驱动对象)
    WebDriver webDriver = new ChromeDriver(options);
    Thread.sleep(5000);
    //2.输入对应网址,这里访问百度
    webDriver.get("https://www.baidu.com");
    Thread.sleep(5000);
    //3.找到输入框并进行搜索操作
    webDriver.findElement(By.xpath("//*[@id=\"kw\"]")).sendKeys("CSDN");
    Thread.sleep(5000);
    //4.找到搜索按钮
    webDriver.findElement(By.xpath("//*[@id=\"su\"]")).click();
    Thread.sleep(5000);
    //5.关闭浏览器
    webDriver.close();
}

修改部分:

//原代码
//驱动程序自动化
    WebDriverManager.chromedriver().setup();

//更新
// 设置本地 ChromeDriver 路径
    System.setProperty("webdriver.chrome.driver", "设置本地 ChromeDriver 路径");

运行成功:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2307764.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

WPF中对滚动条进行平滑滚动

有时候我们在动态添加内容时,需要将滚动条滚动到指定内容处。 一般我们会调用ScrollViewer的ScrollToVerticalOffset(垂直方向)函数和ScrollToHorizontalOffset(水平方向)函数来控制滚动条滚动到指定位置。 正常滚动效…

Threejs 解析几何体提取顶点数据流程

目录 前言 原生WebGL 整体解析过程简介 顶点颜色属性Geometry.colors Geometry转化为BufferGeometry 相关函数 WebGLAttributes.js WebGLGeometries.js WebGLObjects.js WebGLRenderer.js WebGLRenderer.js 前言 解析几何体对象,提取顶点数据&#xf…

YOLOv5 + SE注意力机制:提升目标检测性能的实践

一、引言 目标检测是计算机视觉领域的一个重要任务,广泛应用于自动驾驶、安防监控、工业检测等领域。YOLOv5作为YOLO系列的最新版本,以其高效性和准确性在实际应用中表现出色。然而,随着应用场景的复杂化,传统的卷积神经网络在处…

极简Redis速成学习

redis是什么? 是一种以键值对形式存储的数据库,特点是基于内存存储,读写快,性能高,常用于缓存、消息队列等应用情境 redis的五种数据类型是什么? 分别是String、Hash、List、Set和Zset(操作命…

教育培训APP开发全攻略:从网校系统源码搭建到功能优化的技术方案

本篇文章,笔者将从网校系统源码搭建到功能优化的角度,全面解析教育培训APP的开发技术方案,帮助企业和开发者更好地理解如何提升在线教育平台的性能与用户体验。 一、教育培训APP开发的核心架构 教育培训APP的架构设计是其能否顺利运行和扩展…

网络安全与认知安全的区别 网络和安全的关系

前言 说说信息安全 与网络安全 的关系 一、包含和被包含的关系 信息安全包括网络安全,信息安全还包括操作系统安全,数据库安全 ,硬件设备和设施安全,物理安全,人员安全,软件开发,应用安全等。…

智能机器人加速进化:AI大模型与传感器的双重buff加成

Deepseek不仅可以在手机里为你解答现在的困惑、占卜未来的可能,也将成为你的贴心生活帮手! 2月21日,追觅科技旗下Dreamehome APP正式接入DeepSeek-R1大模型,2月24日发布的追觅S50系列扫地机器人也成为市面上首批搭载DeepSeek-R1的…

Java从根上理解 ConcurrentHashMap:缓存机制与性能优化

目录 一、ConcurrentHashMap 的核心原理1. 数据结构2. 锁机制3. 扩容机制二、ConcurrentHashMap 的缓存机制1. 缓存的实现2. 缓存的更新策略三、ConcurrentHashMap 的性能优化1. 减少锁竞争2. 优化数据结构3. 合理设置容量和负载因子四、具体代码示例1. 创建 ConcurrentHashMap…

通过百度构建一个智能体

通过百度构建一个智能体 直接可用,我不吝啬算力 首先部署一个模型,我们选用deepseek14 构建智能体思考步骤,甚至多智能体; from openai import OpenAIclass Agent:def __init__(self, api_key, base_url, model

【MySQL】(1) 数据库基础

一、什么是数据库 数据库自行选择了合适的数据结构来组织数据,方便用户写入(存储介质,如硬盘,机器断电不会丢失数据)和查询数据。在数据结构部分,我们讲到的 ArrayList、HashMap 集合类对象也能存储数据&am…

DeepSeek后训练:监督微调和强化学习

注:此文章内容均节选自充电了么创始人,CEO兼CTO陈敬雷老师的新书《自然语言处理原理与实战》(人工智能科学与技术丛书)【陈敬雷编著】【清华大学出版社】 文章目录 DeepSeek大模型技术系列十二DeepSeek大模型技术系列十二》DeepS…

基于 MetaGPT 自部署一个类似 MGX 的多智能体协作框架

MGX(由 MetaGPT 团队开发的 mgx.dev)是一个收费的多智能体编程平台,提供从需求分析到代码生成、测试和修复的全流程自动化功能。虽然 MGX 本身需要付费,但您可以通过免费服务和开源项目搭建一个类似的功能。以下是一个分步骤的实现…

数字人技术再超越,TANGO 可生成与音频匹配的全身手势视频

TANGO 是由东京大学与 CyberAgent AI Lab 于 2024 年共同研发的开源框架,专注于声音驱动的全身数字人生成。该技术能够根据目标语音音频生成与之同步的全身手势视频,突破了传统数字人技术仅支持面部或上半身动作的局限性。TANGO 的工作原理利用隐式分层音…

DeepSeek 开源周(2025/0224-0228)进度全分析:技术亮点、调用与编程及潜在影响

DeepSeek 技术开源周期间所有开放下载资源的目录及简要说明: 1. FlashMLA 描述:针对 Hopper GPU 优化的高效 MLA 解码内核,专为处理可变长度序列设计,显著提升大语言模型(LLM)的解码效率。性能:内存受限配置下可达 3000 GB/s 带宽,计算受限配置下可达 580 TFLOPS 算力(…

let、const【ES6】

‌“我唯一知道的就是我一无所知。” - 苏格拉底 目录 块级作用域:var、let、const的对比:Object.freeze(): 块级作用域: 块级作用域指由 {} 包围的代码块(如 if、for、while、单独代码块等)形成的独立作用…

Ollama下载安装+本地部署DeepSeek+UI可视化+搭建个人知识库——详解!(Windows版本)

目录 1️⃣下载和安装Ollama 1. 🥇官网下载安装包 2. 🥈安装Ollama 3.🥉配置Ollama环境变量 4、🎉验证Ollama 2️⃣本地部署DeepSeek 1. 选择模型并下载 2. 验证和使用DeepSeek 3️⃣使用可视化工具 1. Chrome插件-Page …

STM32内存五区及堆栈空间大小设置(启动文件浅析)

前言 嘿,朋友们!今天咱们来聊聊STM32的内存五区和堆栈空间大小设置。这可是嵌入式开发里的“必修课”,要是没整明白,程序说不定就“翻车”了。别担心,我这就带你一步步搞懂这事儿,让你轻松上手&#xff0c…

Go红队开发—语法补充

文章目录 错误控制使用自定义错误类型错误包装errors.Is 和 errors.Aspanic捕获、recover 、defer错误控制练习 接口结构体实现接口基本类型实现接口切片实现接口 接口练习Embed嵌入文件 之前有师傅问这个系列好像跟红队没啥关系,前几期确实没啥关系,因为…

IP----访问服务器流程

这只是IP的其中一块内容-访问服务器流程,IP还有更多内容可以查看IP专栏,前一段学习内容为IA内容,还有更多内容可以查看IA专栏,可通过以下路径查看IA-----配置NAT-CSDN博客CSDN,欢迎指正 1.访问服务器流程 1.分层 1.更利于标准化…