В тестах, которые я пишу, если я хочу утверждать, что WebElement присутствует на странице, я могу сделать следующее:
driver.findElement(By.linkText("Test Search"));
Это пройдет, если оно существует, и будет разорвано, если его не существует. Но теперь я хочу утверждать, что ссылка не существует. Мне неясно, как это сделать, поскольку приведенный выше код не возвращает логическое значение.
РЕДАКТИРОВАТЬ Вот как я придумал собственное исправление, мне интересно, есть ли еще лучший выход.
public static void assertLinkNotPresent (WebDriver driver, String text) throws Exception {
List<WebElement> bob = driver.findElements(By.linkText(text));
if (bob.isEmpty() == false) {
throw new Exception (text + " (Link is present)");
}
}