我正在尝试创建一个表示无序列元素列表的 geb 模块。我已经看到了如何使用表格执行此操作的示例,但我很难将其转换为UL->LI
元素。这是我到目前为止所拥有的:
class CheckoutPage extends Page {
static content = {
cartItemList { $(".cart_items ul") }
cartItem { i -> module CartItem, cartItems[i] }
cartItems(required: false) { cartItemList.find("li.item") }
}
}
class CartItem extends Module {
static content = {
thumbnail { $("img.book_cover", it) }
itemInfo { $("div.item_info", it) }
bookTitle { itemInfo.find("h1").find("a").text() }
}
}
当我在我的规范中执行以下操作时:
def "add an item to the cart"() {
when:
to CheckoutPage, productId: "10001"
then:
cartItems.size() == 1
def cartItem = cartItems(0)
cartItem.bookTitle == "Test Book Title 001"
}
我收到以下错误:
geb.error.UnresolvablePropertyException:无法将 bookTitle 解析为 cartItems 的内容
但是,cartItem
它是一个 DOM 元素,因为我可以这样做并且它可以工作:
cartItem.find("div.item_info").find("h1").find("a").text() == "Test Book Title 001"