首页 > 解决方案 > 上传文件元素不可交互

问题描述

Org.openqa.selenium.ElementNotInteractableException: element not interactable

当我尝试上传文件但使用“点击”操作时,上传文件的窗口可见

@FindBy(id = "uniform-fileUpload")
WebElement uploadFile;

所以当我尝试这种方法时:

public void uploadFile(){
        uploadFile.click();
}

一切正常,选择文件的窗口已打开,因此元素可见。

但是当我尝试这个时:

        uploadFile.sendKeys("C:\\test.png");

    }

我有例外:

org.openqa.selenium.ElementNotInteractableException: element not interactable

页:

http://automationpractice.com/index.php?controller=contact

标签: seleniumselenium-webdriver

解决方案


您正在尝试将击键发送到div. 您需要在input下方选择div,然后将击键发送到该下方。

<div class="uploader" id="uniform-fileUpload">
    <input type="file" name="fileUpload" id="fileUpload" class="form-control">
    ...
</div>

试试 id fileUpload


推荐阅读