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

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

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

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

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

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

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

或者从我的网盘下载:

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

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

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

然后更新代码

原代码:

java 复制代码
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();
}

新代码:

java 复制代码
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();
}

修改部分:

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

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

运行成功:

相关推荐
孔明兴汉5 分钟前
第一章-第三节-Java开发环境配置
java·开发语言
小王不爱笑13232 分钟前
Java 核心知识点查漏补缺(一)
java·开发语言·python
空空kkk37 分钟前
Java——类和对象
java·开发语言
JIngJaneIL1 小时前
篮球论坛|基于SprinBoot+vue的篮球论坛系统(源码+数据库+文档)
java·前端·数据库·vue.js·论文·毕设·篮球论坛系统
毕设源码-赖学姐1 小时前
【开题答辩全过程】以 安卓的服装销售APP为例,包含答辩的问题和答案
java·eclipse·tomcat
青云交2 小时前
Java 大视界 -- Java 大数据在智能农业温室环境调控与作物生长模型构建中的应用
java·机器学习·传感器技术·数据处理·作物生长模型·智能农业·温室环境调控
曾经的三心草2 小时前
SpringAI5-智能聊天机器⼈
java·springai
微露清风2 小时前
系统性学习C++-第八讲-vector类
java·c++·学习
安冬的码畜日常2 小时前
【JUnit实战3_12】第七章:用 Stub 模拟进行粗粒度测试
测试工具·junit·单元测试·junit5·stub模拟·模拟技术·stub 桩
roykingw3 小时前
【思想比实现更重要】高并发场景下如何保证接口幂等性
java·web安全·面试