我正在处理一个geb页面对象,其中包含一组重复的UI元素,一个带有文本输入和按钮的div容器。
我正在尝试以下方法:
class MyModule extends Module{
static content = {
textInput {$("input.editTextField")}
removeInputButton {$("button.removeButton")}
}
}
class MyPage extends Page{
static content = {
myInputs { index ->
$("div.container", index).module(MyModule)
}
}
在IntelliJ中,代码在MyPage on(“div.container,index)上突出显示,当我将鼠标悬停在此上时,我看到''''''''''''''''''''''''''''''''''''''''''''''''''''''''' )'
我的目标是能够选择UI的迭代并执行以下操作:
myInputs(0).textInput = 'foo'
myInputs(1).textInput = 'bar'
myInputs(5).removeInputButton.click()
我已经参考了Geb的文档,但是据说所有这些都应该可行。任何帮助将不胜感激。
答案 0 :(得分:0)
这样可行,只是你的代码不够安全,IntelliJ无法知道你正在调用哪种方法。如果您将内容定义更改为:
myInputs { int index ->
$("div.container", index).module(MyModule)
}
然后警告就会消失。