自动化Web应用程序时遇到问题。
如果在常规浏览器中打开Web应用程序,则可以输入用户名和密码并登录。
但是当我通过Selenium自动执行此操作时,该应用程序未登录。单击登录但未登录时,显示沙漏。我在控制台中看到没有错误或信息。
答案 0 :(得分:1)
尝试放置一些wait()将解决您的问题。 有时,在执行任何操作之前,JavaScript无法正确加载。
WebDriverWait wait = new WebDriverWait(driver,10);
wait.until(ExpectedConditions.stalenessOf(driver.findElement(By.id("ID_OF_ELEMENT"))));
尝试Actions类以执行等待的元素单击,
WebElement webElement = driver.findElement(By.id("Your ID Here"));
Actions builder = new Actions(driver);
builder.moveToElement(webElement).click(webElement);
builder.perform();
如果不起作用,请尝试使用javascript executor进行此操作,
JavascriptExecutor executor = (JavascriptExecutor) driver;
executor.executeScript("arguments[0].click();", webElement);