理解assertFalse方法结合findElements方法

时间:2012-09-03 11:07:37

标签: selenium junit

您好我只是想知道这行代码是如何工作的(它已被分成两部分以便更具可读性)

我是否正确地说findElements方法找到带有CSS选择器“h2#main-login”的元素然后将它们加载到数组中?然后使用size方法检查该数组的长度是否等于0?

如果数组大小为0,会发生什么? assertFalse显示消息“不重定向到登录页面”吗?

assertFalse("Not redirecting to login page", 
driver.findElements(By.cssSelector("h2#main-login")).size() == 0);

任何有助于我理解这一点的解释都会受到大量赞赏。

1 个答案:

答案 0 :(得分:2)

driver.findElements(By.cssSelector("h2#main-login")).size() == 0

是一种解决方法,用于检查元素是否存在

!driver.findElements(By.cssSelector("h2#main-login")).isDisplayed()

也是可能的..

如果这不是假(true)消息

"Not redirecting to login page"

出于调试原因,

附加到AssertionException

更好:

assertTrue("Not redirecting to login page", 
           driver.findElements(By.cssSelector("h2#main-login")).isDisplayed())