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
页面:
答案 0 :(得分:3)
您正在尝试将击键发送到div
。您需要在input
下的div
上进行选择,然后向其发送击键。
<div class="uploader" id="uniform-fileUpload">
<input type="file" name="fileUpload" id="fileUpload" class="form-control">
...
</div>
尝试使用ID fileUpload
。
答案 1 :(得分:1)
更改此
@FindBy(id = "uniform-fileUpload")
WebElement uploadFile;
到
@FindBy(id = "fileUpload")
WebElement uploadFile;
由于这是input
元素,因此需要作为文件输入的目标。