java - 如何将 Excel 值与 iframe 下拉值进行比较

标签 java selenium selenium-webdriver

有一种情况,即需要将 excel 值与下拉值(iFrame 中存在的 DD)进行比较。我已经完成了代码,但这非常非常慢,需要优化以便快速比较。这里的列表包含来自下拉列表的所有数据。提前致谢。

引用代码:

for (int k = 1; k<= totalrows;k++)
        {
            XSSFCell Cell=sheetname.getRow(k).getCell(0);
            Cell.setCellType(Cell.CELL_TYPE_STRING);
            String Celldata=Cell.getStringCellValue();
            boolean isfound = false;
            webDD:
            for(WebElement e : list)    {
                String CliNam = e.getText();
                if(findClientNam.equals(Celldata))
                {
                    isfound= true;
                    break webDD;
                }
            }               
            if(!isfound)
            {
                Log.info("Value Not found in Dropdown: "+Celldata);
                Thread.sleep(1000);
            }

        }

最佳答案

而不是遍历 List<WebElement>为每一行制作 Set<String>并使用 contains

Set<String> values = new HashSet<String>();
for(WebElement e : list) {
    values.add(e.getText());
}  

for (int k = 1 ; k <= totalrows ; k++) {
    XSSFCell Cell = sheetname.getRow(k).getCell(0);
    Cell.setCellType(Cell.CELL_TYPE_STRING);
    String cellData = Cell.getStringCellValue();

    if (!values.contains(cellData)) {
        Log.info("Value Not found in Dropdown: " + cellData);
        Thread.sleep(1000);
    }
}

关于java - 如何将 Excel 值与 iframe 下拉值进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44516200/

相关文章:

java - 使用 Java 在 WebDriver 中通过 Ctrl+F5 刷新浏览器

java - Selenium WebDriver 页面事件监听

java - 避免并发修改

java - 我怎样才能做长值的for循环

java - 通用方法失败

java - 如何将分号附加到 ArrayList<String> 中的每个元素

java - 为什么模数很大似乎在 Java 中给出了错误的答案

python - 无法建立新连接最大重试错误

Arraylist 上的 java.util.NoSuchElementException

javascript - 元素在点 (194, -212) 处不可点击,需要滚动