Geb模块显示错误

时间:2016-05-18 20:27:57

标签: intellij-idea geb

我正在处理一个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的文档,但是据说所有这些都应该可行。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

这样可行,只是你的代码不够安全,IntelliJ无法知道你正在调用哪种方法。如果您将内容定义更改为:

myInputs { int index ->
    $("div.container", index).module(MyModule)
}
然后警告就会消失。