使用Java中断通过Selenium上传的文件



我正在尝试中断文件上传,这似乎是不可能的。在上传整个文件之前,似乎没有执行elem.sendKeys("filename.txt")以外的任何操作。此外,虽然通过Firebug检查或手动测试时可用,但没有一个按钮是可点击的。

通过点击取消文件上传按钮(手动执行测试时可点击该按钮)自动化文件上传和中断将导致测试失败,但有以下例外:ElementNotVisibleException: Element is not currently visible and so may not be interacted with

是否有任何方法可以强制中断?有没有其他的方法可以让艾滋病做同样的事情呢?我使用Firefox进行此测试。

:

<div style="padding-left: 40px;">
    <input id="upload" type="file" multiple="" label="File" name="upload[]" size="50">
</div>

Java :

WebElement elem = driver.findElement(By.id("upload"));
elem.sendKeys("filename.txt");
driver.navigate().refresh();
System.out.println("hi");

我没有看到这样做有什么意义,但是现在我们开始:

我相信你不能停止elem.sendKeys()方法在硒(它做实际上传)。在输入文本上使用它来设置字符串与实际上传文件相同。它只是Selenium试图在您的输入上设置一些值。

一种方法是点击你已经实现的取消上传按钮。

既然你已经尝试过,这个例外ElementNotVisibleException: Element is not currently visible and so may not be interacted with意味着元素存在(硒已经发现它在DOM上),但它不可见(元素有一些属性,如overflow: hidden display:none等)
我的最佳猜测是,您应该解决这个问题,并尝试单击实现停止上传操作的按钮。

最新更新