我正在尝试下面的代码,但似乎不起作用…有人可以向我展示最佳方法吗?
public void verifyThatCommentDeleted(final String text) throws Exception {
new WebDriverWait(driver, 5).until(new ExpectedCondition<Boolean>() {
@Override
public Boolean apply(WebDriver input) {
try {
input.findElement(By.xpath(String.format(
Locators.CHECK_TEXT_IN_FIRST_STATUS_BOX, text)));
return false;
} catch (NoSuchElementException e) {
return true;
}
}
});
}
我通常使用两种方法(成对)来验证元素是否存在:
public boolean isElementPresent(By locatorKey) {
try {
driver.findElement(locatorKey);
return true;
} catch (org.openqa.selenium.NoSuchElementException e) {
return false;
}
}
public boolean isElementVisible(String cssLocator){
return driver.findElement(By.cssSelector(cssLocator)).isDisplayed();
}
请注意,硒有时可以在DOM中找到元素,但是它们是不可见的,因此硒将无法与其交互。因此,在这种情况下,检查可见性的方法会有所帮助。
如果要等到元素出现,我发现最好的解决方案是使用流畅的等待:
public WebElement fluentWait(final By locator){
Wait<WebDriver> wait = new FluentWait<WebDriver>(driver)
.withTimeout(30, TimeUnit.SECONDS)
.pollingEvery(5, TimeUnit.SECONDS)
.ignoring(NoSuchElementException.class);
WebElement foo = wait.until(new Function<WebDriver, WebElement>() {
public WebElement apply(WebDriver driver) {
return driver.findElement(locator);
}
});
return foo;
};
希望这可以帮助)
本文向大家介绍检查Java ArrayList中元素的存在,包括了检查Java ArrayList中元素的存在的使用技巧和注意事项,需要的朋友参考一下 java.util.ArrayList.contains()方法可用于检查ArrayList中是否存在元素。此方法具有单个参数,即要测试其在ArrayList中是否存在的元素。如果该元素存在于ArrayList中,则返回true;如果不存在该元素,
问题内容: 在调用对象的函数之前,我需要检查对象是否为null,以避免引发。 最好的方法是什么?我考虑过这些方法。 哪一种是Java最佳编程实践? 问题答案: 方法4是最好的。 将使用短路评估,这意味着如果a的第一个条件为假,则评估结束。
问题内容: 使用Java 使用SeleniumRC来检测网页上的元素以进行自动测试的最佳方法是什么?我知道有XPath元素和CSS元素,但是哪一个最好? 谢谢!尼丁 问题答案: 我认为,最准确的方法是XPath,因为您可以使用XPath来描述DOM中元素的确切位置,但是在某些情况下CSS定位器比XPath更好。 使用硒的ID定位器是最简单的方法,但是除非您要查找的元素具有ID并不总是有用的。 使用
问题内容: 在实时自动化中,在对每个元素执行某些操作之前,我们是否要检查每个元素的存在? 无论哪里有声明,都有机会出现 NoSuchElementException 。我的问题是我们是否每次都要检查元素的存在? 是否每个语句都必须用块包围? 问题答案: 您可能会发现使用AbstractWebDriverEventListener类特别有用。此类实现WebDriverEventListener接口,
在实时自动化中,在对每个元素执行操作之前,我们是否检查它们的存在(在测试中)? 只要有一个语句,就有可能出现NoTouchElementException。我的问题是我们是否每次都检查元素的存在? 是否每个语句都需要被块包围?
我有一个变量(testvariable),根据变量的isNull,我需要做一个方法调用,如下所示 在可选的