java - 使用 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
解决方案
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());
推荐阅读
- amazon-web-services - Spring Cloud aws vs aws sdk java2
- python - 带有颜色编码 swarmplot 的小提琴 catplot
- flutter - Flutter:在 BottomNavigationBar 中更新 currentIndex 时,PageView 的性能滞后(但如果我不更新 currentIndex,则没有滞后)
- ios - NSMergeConflict 与 oldVersion 和 newVersion 报告为相等
- c# - C#使用StreamReader读取文件后在每行末尾添加逗号
- elasticsearch - Kibana Canvas - 有什么方法可以将 2 个公制元素合并为一个降价元素?
- c# - 为什么实体已经定义了一个关键字段?
- python - Plotly:如何在两条垂直线之间设置填充颜色?
- android - 较新的 Lottie 文件不适用于 Android 上的 React Native?如何导出为旧版?
- perl - 记忆一个 XML 解析函数会破坏它