为了账号安全,请及时绑定邮箱和手机立即绑定

如何验证整列具有相同的值

如何验证整列具有相同的值

守着星空守着你 2023-03-09 14:29:19
我需要验证 Web 表中的列是否包含所有行的完全相同的值。我已经完成了一些编码,但我正在寻找有关如何提高性能的信息:我尝试了一个 for 循环,对每一行使用 getText 方法并将该值与预期的字符串进行比较:      List<WebElement> rows = driver.findElements(By.xpath(xxxx))      for(WebElement e : rows) {          if(e.getText() != expectedString) {              throwError          }      }我也尝试过 Java 流和 lambda 表达式,但是最后 Collector 部分需要花费大量时间来处理:        List<String> fetchedValues = rows           .stream()           .filter(e -> e.getText() != expectedString)           .collect(Collectors.toList());如果至少其中一行不包含预期的字符串,我想获取信息。有没有什么办法,例如用 Java 读取给定列中的所有值并立即将其加载到 ArrayList?
查看完整描述

1 回答

?
慕码人2483693

TA贡献1860条经验 获得超9个赞

您可以尝试此处描述的 forEach 方法

这里有一个例子:

@Test

    public void sTest () {

        WebDriverManager.chromedriver().setup();

        WebDriver driver = new ChromeDriver();

        driver.get("https://www.techbeamers.com/handling-html-tables-selenium-webdriver/");

        List<WebElement> el = driver.findElements(By.xpath("//*[@id='post-3500']/div[1]/div/p[3]/a"));

        el.forEach((e)-> {

            if(!e.getText().equals(expectedString)) throwError

        });

        driver.quit();


    }


查看完整回答
反对 回复 2023-03-09
  • 1 回答
  • 0 关注
  • 80 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信