首页 > 解决方案 > 使用 selenium webdriver 上传文件

问题描述

我们如何通过自动化在 UI 上上传 jpeg?

目前我将图像放在资源下的仓库中,我正在执行以下代码

WebElement element = driver.findElement(By.id("mypicId"));
File file = new File(ClassLoader.getSystemResource("test.jpg").toURI());
element.sendKeys(file.getAbsolutePath());

我要向其发送文件的元素是

我期待文件被上传,但我收到以下错误 java.util.concurrent.ExecutionException: org.openqa.selenium.WebDriverException: invalid argument: File not found : test.jpg

标签: javaselenium-webdriver

解决方案


driver.setFileDetector(new LocalFileDetector());

WebElement element = driver.findElement(By.id("mypicId"));
File file = new File(System.getProperty("user.dir") + "/src/java/resources/test.jpg"));
//or


// File file = new File(System.getProperty("user.dir") + "/src/test/resources/test.jpg"));
element.sendKeys(file.getAbsolutePath());

推荐阅读