我有一个基于Selenium WebDriver
的测试用例,在执行期间会暂停。它应该将数千个文件上传到网站。当选择要上传的文件时,有时不会单击“确定”,而是等待手动交互。在大多数情况下,它运行良好。
我使用StringSelection
复制文件源并将其粘贴到输入字段。
StringSelection cp = new StringSelection(fileSource);
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(cp, null);
最佳答案
我认为您的测试可能会很快进行?如果是这种情况,那么您可能会使用WebDriverWait? WebDriverWait可用于等待单击“确定”元素,然后单击继续操作。
我可能是错的,但是如果没有其余代码,我无法真正分辨出问题所在。
我个人使用以下方法,然后可以调用
public void waitForElementToBeVisible(String cssSelector) throws Throwable {
try {
WebDriverWait wait = new WebDriverWait(driver, 30);
wait.until(ExpectedConditions.or(
ExpectedConditions.visibilityOfElementLocated(By.cssSelector(cssSelector))
));
} catch (Exception e) {
System.out.println("Timeout exceeded");
closeDriver();
}
}
关于java - Webdriver测试意外暂停,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45816379/