我正在为Chrome使用Selenium Webdriver。我正在测试带有大量AJAX内容的Web应用程序,因此登录到应用程序后,将需要几秒钟才能在主页中加载AJAX内容。
我使用明确的等待登录后等待直到找到元素。但这主要是失败的。我给了25秒的等待,但是等待4秒后会失败。错误是...
Unknown error: Element <a href="/ls/create_new" class="ajax addDashButton hasLink">...</a> is not clickable at point (144, 223).
其他元素会单击: (会话信息:Chrome = 60.0.3112.78) (
我的代码是..
public class login {
WebDriver driver;
@Test
public void f() {
System.setProperty("webdriver.chrome.driver", "filepath/chromedriver");
driver = new ChromeDriver();
driver.get("URL");
driver.manage().window().maximize();
driver.findElement(By.name("username")).sendKeys("username");
driver.findElement(By.name("password")).sendKeys("password");
driver.findElement(By.className("login")).click();
WebDriverWait wait = new WebDriverWait(driver, 25);
wait.until(ExpectedConditions.presenceOfElementLocated(By.linkText("Create New App")));
driver.findElement(By.linkText("Create New App")).click();
}
}
这只是我代码的一部分。.使用WebDriver等待的正确方法。ty
使用 striceseFelementLostofated ,尝试一次 vistibilityofelementLosofeflementLocated 。
- 可见性felementLosated:检查元素应可见并存在。
- 存在forementOfelementLosated:它只是检查元素是否存在于DOM中。
有关更多信息使用可以检查以下链接 - "预期条件"之间的确切区别是什么。and&quot'greengeConditions.presenceOfelementLosated&quot&quot'