使用 GEB 断言 dom 中不存在元素
Assert an element is not present in the dom using GEB
我正在尝试根据登录者验证页面。某些用户具有更高的安全性,并且会在页面上看到更多项目。当安全性较低的用户登录时,他们将看不到选项。我需要验证页面上不存在这些选项。
我有一个基于用户安全显示的选项的页面对象
testObject {$("#test")}
我试过使用 isDisplayed()
boolean hidden = testObject.isDisplayed()
assert !hidden
但我不断收到一条错误消息
geb.error.RequiredPageContentNotPresent: The required page content
geb.navigator.EmptyNavigator' is not present
错误信息是我要验证的。该对象不存在,我需要验证它是否属实并通过测试。
您想为您的内容元素使用 required
选项。
如果页面是动态的,也许你还想等待一段时间,然后让 Geb 决定该元素为空。检查 non-existence 个元素可能会很棘手,因为它们可能会通过,因为动态元素尚未完成加载。
testObject(required: false, wait: 2) { $("#test") }
在你的 Geb 测试中,你只需这样做(不需要辅助方法):
given:
def page = to MyPage
expect:
page.testObject.empty
我正在尝试根据登录者验证页面。某些用户具有更高的安全性,并且会在页面上看到更多项目。当安全性较低的用户登录时,他们将看不到选项。我需要验证页面上不存在这些选项。
我有一个基于用户安全显示的选项的页面对象
testObject {$("#test")}
我试过使用 isDisplayed()
boolean hidden = testObject.isDisplayed()
assert !hidden
但我不断收到一条错误消息
geb.error.RequiredPageContentNotPresent: The required page content geb.navigator.EmptyNavigator' is not present
错误信息是我要验证的。该对象不存在,我需要验证它是否属实并通过测试。
您想为您的内容元素使用 required
选项。
如果页面是动态的,也许你还想等待一段时间,然后让 Geb 决定该元素为空。检查 non-existence 个元素可能会很棘手,因为它们可能会通过,因为动态元素尚未完成加载。
testObject(required: false, wait: 2) { $("#test") }
在你的 Geb 测试中,你只需这样做(不需要辅助方法):
given:
def page = to MyPage
expect:
page.testObject.empty