我可以断言一个不存在的元素吗?我想断言元素" textarea"在网站上不存在。
try {
assertFalse(isElementPresent(By.cssSelector("textarea")));
} catch (Error e) {
verificationErrors.append(e.toString());
System.out.println(verificationErrors);
}
private boolean isElementPresent(By by) {
try {
driver.findElement(by);
return true;
} catch (NoSuchElementException e) {
return false;
}
}
答案 0 :(得分:0)
方法#1
import junit.framework.Assert;
如果(isElementPresent(By.cssSelector("!textarea的")))
{
System.out.println(" Text Not Available");
其他的 {
Assert.fail();
}
方法#2
在您的情况下,请使用下面给出的否定用例
import junit.framework.Assert;
boolean b = driver.getPageSource()。contains(" your text");
Assert.assertTrue(B);
import junit.framework.Assert;
boolean b = driver.getPageSource()。contains(" your text");
Assert.assertFalse(B);
有很多方法可以做到这一点。以上几点:)
强烈建议使用方法#1!
答案 1 :(得分:0)
你问题中的代码应该有用。
另一种方法是调用driver.findElements
而不是driver.findElement
(请注意添加的s
)。如果没有匹配,NoSuchElementException
将返回一个空列表,而不是抛出driver.findElements
。从那里,您只需断言返回列表的大小为零。