使用' eachWithindex' groovy而不是For循环来读取json数据

时间:2017-08-17 15:42:19

标签: groovy

我在转换现有的FOR循环时遇到了麻烦,无法使用' eachWithIndex' groovy功能。

我不确定如何成功地完成此操作,我已经看到的示例在教程上非常简单,但我不确定如何使它们与groovy json文件一起使用。

当前解决方案使用For循环,该循环从3个不同的groovy文件中读取数据

 Add_Page1_data = data.get("json_Page1")
 Add_Page2_data = data.get("json_Page2")
 Add_Page3_data = data.get("json_Page3")

    for (int i=0; i< Add_Page1_data.size(); i++) {
        execute(w, Add_Page1_data[i],
                   Add_Page2_data[i],
                   Add_Page3_data[i])
    }

然后我使用以下代码通过访问文件的页面对象来填充窗口内的数据:

  def execute(w, data1) {
    def page1 = new PO_Add_Page1(wrapper: w)
    page1.typeInSomeText(data1.sometext) 
    }

PageObject文件如下所示:

class PO_Add_Page1 {
def typeInSomeText(val) {
    wrapper.findWithLabel("Some Text  . .").rightEditable().type(val)
}

使用的Json文件包含多个这样的记录:

{
"json_Page1": [
    {
        "sometext": "text1"
    },
    {
        "sometext": "text2"
    },

将json作为&#34;数据&#34;使用页面对象groovy文件映射到页面上的元素。

我希望能够以更加时髦的惯用方式重复相同的功能。

非常感谢任何帮助。

0 个答案:

没有答案