用没有多个sendkey(循环)的文本填充所有textarea吗?

时间:2018-08-18 07:48:20

标签: java loops selenium while-loop

我有一个问题,我有一个表单(angularJS),此表单有10个textarea,现在我有10次sendkes操作,这使代码很丑陋:(

如何查找所有地雷文本区域并仅传递一次值?

现在我有这样的东西:

 List<WebElement> allFormElements= driver.findElements(By.xpath("myPath"));
        allFormElements.size();
        System.out.println("Lets count all forms" +allFormElements);
        for (WebElement item : allFormElements) {
            if (item.getTagName().equals("textarea"))
           item.sendKeys("testing values");
        }

Thakns

1 个答案:

答案 0 :(得分:0)

此解决方案对我来说很好!

List<WebElement> allInputFields = driver.findElements(By.cssSelector("cm-edit-request-form dx-text-area textarea"));
        if(allInputFields.size()!=0){
            for(WebElement allInputFieldsElement:allInputFields){
                if(allInputFieldsElement.isEnabled()) {
                    wait.until(ExpectedConditions.elementToBeClickable((allInputFieldsElement)));
                    allInputFieldsElement.sendKeys("Automation text" + uuid);
                }
            }