获取Geb的输入类型

时间:2014-09-28 19:03:03

标签: geb

我正在使用Geb编写一个脚本,该脚本将使用随机输入多次测试调查,以确保没有任何中断。我想迭代表单上的每个输入,并根据输入类型执行不同的操作。

例如:

while ($("form").find("input", j)) {
    if($("form").find("input", j) == "checkbox"){
        //check it sometimes
    }
    else if($("form").find("input", j) == "select"){
        //select a random option
    }
    j++
}

我还不确定该调查是如何运作的,所以我宁愿沿着人的方式走下页面而不是先做所有复选框,然后再选择所有选项等等。我可以检查一下像我的例子那样的输入类型?

另外,我注意到我正在重复$("表格")。find("输入",j)。我可以将它变成jQuery中的变量吗?

1 个答案:

答案 0 :(得分:2)

只需在导航器中收集所有inputselect并迭代所有这些内容。使用is(String tagName)检测选择元素,使用@type属性访问器检测其他元素类型:

def form = $("form")
def formElements = form.find("input") + form.find("select")
formElements.each { Navigator element ->
    if (element.is("select") {
        //select a random option
    }
    if (element.@type == "checkbox") {
        //check it sometimes
    }
}