摘要:在硒网络驱动程序中 - 由于添加按钮不可见,上传功能不起作用。
描述:
功能就像,打开一个弹出窗口上传文件,最初添加按钮被禁用。用户需要单击浏览按钮,选择文件,系统将验证文件格式和大小(4MB)。如果有效,则浏览文本框以绿色突出显示。仅在验证后,将启用"添加"按钮。单击添加后,弹出窗口关闭,添加的材料显示在主页中。
硒代码和错误:
但是在下面的se代码抛出错误错误 - org.openqa.selenium.ElementNotVisibleException:元素当前不可见,因此可能无法与之交互。
driver.findElementByXPath("//*[@id='fuVideo_ctl02']").sendKeys("D:\Featured Materials");
Thread.sleep(1000);
driver.findElementByClassName("add_uploadbtn").click(); //Clicking on Add button
String Addtext = driver.findElementByClassName("add_uploadbtn").getText();
System.out.println("Add text" +Addtext);
以上打印语句结果:添加文本
注意:在脚本运行时,将上传文档,并且文件验证会开始和不结束。它的显示时间,脚本以上述错误结束。
.HTML:上传功能代码直到"添加"按钮
<td colspan="2">
<span id="fuVideo" class="upload_file_txt mleft10" style="background: white" onclick="javascript:fnCheckFileIsUpload(this);">
<input id="fuVideo_ctl00" class="upload_file_txt" type="hidden" name="fuVideo$ctl00" style="width: 550px;" value="Copy of CAS QEA-PES Score Card Feb_2014_Capex Opex_STORM_Updated.xlsx">
<div id="fuVideo_ctl01" name="fuVideo_ctl01">
<input id="fuVideo_ctl02" class="upload_file_txt" type="file" style="width: 550px; background-color: Lime; color: black;" name="fuVideo$ctl02">
</div>
</span>
<br disabled="disabled">
<span style="margin-left: 25px;">Description</span>
<input id="txtDescriptionFU" class="add_edit_content_input" type="text" style="margin-left: 20px; width: 460px;" maxlength="500" name="txtDescriptionFU">
<input id="btnVideo" class="add_uploadbtn" type="button" onclick="javascript:fnFileUploadValidation();" value="Add">
请帮助解决此问题。
提前感谢....
1 秒似乎不足以让"添加"按钮变得可见。代替Thread.sleep(1000)
,请使用:
WebDriverWait wait = new WebDriverWait(driver, MAX_WAITTIME_IN_SECONDS);
wait.until(ExpectedConditions.visibilityOfElementLocated(By.className("add_uploadbtn").click();
这假定driver.findElementByXPath("//*[@id='fuVideo_ctl02']").sendKeys("D:...
工作正常。